Part Number Hot Search : 
9479E 08140 MAA02033 501VN AD7856 S14K320E 87759 10M8A
Product Description
Full Text Search
 

To Download PSD501B1 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1/3 not for new design january 2002 this is information on a product still in production but not recommended for new designs. psd5xx zpsd5xx low cost field programmable microcontroller peripherals features summary single supply voltage: 5v 10% for psd5xx 2.7 to 5.5 v for psd5xx-v up to 1 mbit of uv eprom up to 16 kbit sram input latches programmable i/o ports page logic programmable security figure 1. packages pldcc68 (j) cldcc68 (l) tqfp68 (u)
i psd5xx family psd5xx/zpsd5xx field-programmable microcontroller peripherals table of contents 1 introduction.................................................................................................................. .........................................1 2 key features ................................................................................................................... .....................................3 3 notation ...................................................................................................................... ..........................................4 4 zpsd background................................................................................................................ ................................4 5 integrated power management tm operation........................................................................................................6 6 design flow .................................................................................................................... ......................................7 7 psd5xx family .................................................................................................................. ..................................8 8 table 2. psd5xx pin descriptions.................................................................................................. ....................9 9 the psd5xx architecture ......................................................................................................... .........................11 9.1 the zpld block................................................................................................................ ..........................11 9.1.1 the dpld................................................................................................................... ......................14 9.1.2 the gpld................................................................................................................... ......................14 9.1.2.1 por a macrocell structure.................................................................................................. 16 9.1.2.2 port b macrocell structure................................................................................................. 20 9.1.2.3 port e macrocell structure................................................................................................. 23 9.1.3 the ppld................................................................................................................... ......................26 9.1.4 the zpld power management.................................................................................................... ....26 9.2 bus interface................................................................................................................ ...............................29 9.2.1 bus interface configuration................................................................................................. .............29 9.2.2 psd5xx interface to a multiplexed bus.......................................................................................... .29 9.2.3 psd5xx interface to non-multiplexed bus ......................................................................................3 0 9.2.4 data byte enable............................................................................................................ ..................30 9.2.5 optional features.......................................................................................................... ...................34 9.2.6 bus interface examples...................................................................................................... ..............34 9.3 i/o ports.................................................................................................................... ..................................39 9.3.1 standard mcu i/o ............................................................................................................ ................39 9.3.2 pld i/o .................................................................................................................... .......................39 9.3.3 address out................................................................................................................ ......................40 9.3.4 address in ................................................................................................................. .......................40 9.3.5 data port .................................................................................................................. ........................40 9.3.6 special function out ........................................................................................................ ................40 9.3.7 alternate function in ....................................................................................................... .................41 9.3.8 peripheral i/o ............................................................................................................. ......................41 9.3.9 open drain outputs.......................................................................................................... ................41 9.3.10 port registers............................................................................................................ .......................42 9.3.11 port a functionality and structure.......................................................................................... .......45 9.3.12 port b functionality and structure.......................................................................................... .......45 9.3.13 port c and port d functionality and structure ..............................................................................48 9.3.14 port e functionality and structure.......................................................................................... .......48 9.4 memory block ................................................................................................................. ............................52 9.4.1 eprom ..................................................................................................................... .......................52 9.4.2 sram...................................................................................................................... .........................52 9.4.3 memory select map........................................................................................................... ...............52 9.4.4 memory select map for 8031 application......................................................................................... 54 9.4.5 peripheral i/o ............................................................................................................. ......................56
ii psd5xx family psd5xx/zpsd5xx field-programmable microcontroller peripherals table of contents (cont.) 9.5 power management unit ......................................................................................................... ...................58 9.5.1 standby mode ............................................................................................................... ...................58 9.5.2 power down ................................................................................................................. ....................58 9.5.3 sleep mode ................................................................................................................. .....................58 9.5.4 other power saving options ................................................................................................... .........61 9.6 psd5xx counter/timer......................................................................................................... .....................63 9.6.1 counter/timer operation.................................................................................................... ..............66 9.6.2 counter/timer registers .................................................................................................... ..............81 9.7 interrupt controller ......................................................................................................... .............................95 9.7.1 interrupt operation ........................................................................................................ ...................95 9.7.2 input/output.............................................................................................................. ......................100 9.7.3 ppld macrocell............................................................................................................. .................100 9.7.4 interrupt flowchart........................................................................................................ ..................100 10.0 page register............................................................................................................... ....................................103 11.0 security protection......................................................................................................... ...................................103 12.0 system configuration ........................................................................................................ ...............................104 12.1 reset input ................................................................................................................. ...........................108 12.2 zpld and memory during reset................................................................................................... ........108 12.3 register values during and after reset.......................................................................................... ......108 12.4 zpld macrocell initialization ................................................................................................ .................108 13.0 specifications............................................................................................................. .......................................109 13.1 absolute maximum ratings..................................................................................................... ..............109 13.2 operating range ............................................................................................................. ......................109 13.3 recommended operating conditions............................................................................................. .......109 13.4 ac/dc parameters............................................................................................................ ....................110 13.5 example of psd5xx typical power calculation at v cc = 5.0 v ...........................................................111 13.6 dc characteristics (5 v 10% versions) ..............................................................................................112 13.7 ac/dc parameters zpld timing parameters ...................................................................................113 13.8 microcontroller interface ac/dc parameters ................................................................................... ..115 13.9 dc characteristics (zpsd5xxv versions) (3.0 v 10% versions)......................................................120 13.10 ac/dc parameters zpld timing parameters (3.0 v 10% versions)..............................................121 13.11 microcontroller interface ac/dc parameters (3.0 v 10% versions).................................................121 14.0 timing diagrams............................................................................................................. ..................................128 15.0 pin capacitance............................................................................................................. ...................................134 16.0 ac testing .................................................................................................................. ......................................134 17.0 erasure and programming...................................................................................................... ..........................134 18.0 psd5xx pin assignments....................................................................................................... .........................135 19.0 package information......................................................................................................... ................................137 20.0 psd5xx product ordering information ........................................................................................... .................142 20.1 psd5xx family selector guide ................................................................................................. ........142 20.2 part number construction..................................................................................................... ................143 20.3 ordering information........................................................................................................ ......................143 21.0 process change notice, october 1, 1998 .......................................................................................... ..............148
1 1.0 introduction programmable peripheral psd5xx family field-programmable microcontroller peripherals the psd5xx family is a microcontroller peripheral that integrates high-performance and user-configurable blocks of eprom, programmable logic, and sram into one part. the psd5xx is also loaded with a variety of features, such as counter/timers, interrupt controller, power management, and page logic. the psd5xx products also provide a powerful microcontroller interface that eliminates the need for external aglue logico. the no aglue logico concept provides a user-programmable interface to a variety of 8- and 16-bit (multiplexed or non-multiplexed) microcontrollers that is easy to use. the part's integration, small form factor, low power consumption, and ease of use make it the ideal part for interfacing to virtually any microcontroller. the psd5xx provides three zero-power plds (zplds): a decode pld (dpld), a general-purpose pld (pld), and a peripheral pld (ppld). the zplds have a total of 61 inputs, 140 product terms, 30 macrocells, and 24 i/o connections. a configuration bit (turbo) can be set by the mcu, and will automatically place the zplds into standby if no inputs are changing. the zplds are designed to consume minimum power using zero power cmos technology that uses low standby current. unused product terms are automatically disabled, also reducing power, regardless of the turbo bit setting. the main function of the dpld is to perform address decoding for the internal i/o ports, eprom, and sram. the address decoding can be based on up to 24 bits of address inputs, control signals (rd, wr, psen, etc.), and internal page logic. the dpld supports separate program and data spaces (for 8031 compatible mcus). the general-purpose pld (gpld) can be used to implement various logic defined by the user, such as: ? state machines ? loadable counters and shift registers ? inter-processor mailbox ? external control logic (chip selects, output enables, etc.). the gpld has access to up to 61 inputs, 118 product terms, 24 macrocells, and 24 i/o pins.
psd5xx family 2 please refer to the revision block at the end of this document for updated information. the peripheral pld (ppld) generates outputs to the counter/timer unit and the interrupt controller. the ppld outputs to the counter/timer enable, disable, or trigger counting or time capture. the ppld outputs to the interrupt controller enables the user to define conditions for interrupt generation. the counter/timer unit provides four 16-bit highly flexible counter/timers. each has five modes of operation: pulse, waveform, event counting, time capture, and watchdog (real-time clock). each counter/timer can be programmed to count up or down. the inputs to the counter/timer, which enable/disable counting or trigger an operation, can originate from the ppld directly or directly from the pins. the maximum operating frequency of each counter is 7.5 mhz. the input clock can be divided (by up to 280) before driving the counter/timer unit using the 4 to 280 prescaler. the interrupt controller has eight levels of priority encoding. it accepts four user-defined interrupts and four terminal counts from the counter/timer. each interrupt can be individually masked and configured to be level or edge sensitive. a 3-bit interrupt vector is generated that can be read by the microcontroller. the serviced interrupt will be cleared automatically after the microcontroller has read the interrupt vector. the psd5xx has 40 i/o pins that are divided among 5 ports. each i/o pin can be individually configured to provide many functions, including the following: ? mcu i/o ? zpld i/o ? latched address output (for mcus with multiplexed data bus) ? special function i/o (counter/timer and interrupts) ? data bus (for mcus with non-multiplexed data bus). the psd5xx can easily interface with virtually any 8- or 16-bit microcontroller with a multiplexed or non-multiplexed bus. all of the mcu control signals are connected to the zplds, enabling the user to generate signals for external devices. the psd5xx can generate a reset output based on the reset input (includes hysteresis). the psd5xx provides between 256 kbits and 1 mbit of eprom that is divided in to four equal-sized blocks. each block can occupy a different address location, allowing for versatile address mapping. the access time of the eprom includes the address latching and dpld decoding. the psd5xx has an optional 16 kbit sram that can be battery-backed by connecting a battery to the vstby pin. the battery will protect the contents of the sram in the event of a power failure. therefore, you can place data in the optional sram that you want to keep after the power is switched off. power switch-over to the battery automatically occurs when vcc drops below vstby. a four-bit page register enables easy access to the i/o section, eprom, and sram for microcontrollers with limited address space. the page register outputs are connected to the zplds and thus can also be used for external paging schemes. introduction (cont.)
psd5xx family 3 2.0 key features introduction (cont.) the power management unit (pmu) of the psd5xx enables the user to control the power consumption on selected functional blocks, based on system requirements. for microcontrollers that do not generate a chip select input for the psd, the automatic power-down (apd) unit of the pmu can be setup to enable the psd to enter power down or sleep mode, based on the inactivity of ale (or as). implementing your design has never been easier than with psdsoftewsi's software development suite. using psdsoft, you can do the following: ? configure your psd5xx to work with virtually any microcontroller ? specify what you want implemented in the programmable logic using a design file ? simulate your design ? download your design to the part using a programmer. o single-chip programmable peripheral for microcontroller-based applications o 256k to 1 mbit of uv eprom with the following features: ? configurable as 32, 64, or 128 k x 8; or as 16, 32, or 64 k x 16 ? divided into four equally-sized mappable blocks for optimized address mapping ? as fast as 70 ns access time, which includes address decoding ? built-in zero-power technology o 16 kbits sram is configurable as 2k x 8 or 1k x 16. the access time can be as quick as 70 ns, including address decoding. the contents of the sram can be battery-backed by connecting a battery to the vstby pin. the sram was also designed using zero-power technology o 40 i/o pins (divided into five 8-bit ports) that can be individually configured for: ? standard mcu i/o ? pld/macrocell i/o ? latched address output ? high-order address inputs ? special function i/o ? open-drain output o three zero-power programmable logic devices (zplds): the decode pld (dpld), the general-purpose pld (gpld), and the peripheral pld (ppld) can be used for: ? up to 61 input and 140 output product terms ? 24 macrocells and i/o ? decode up to 16 mb of address ? state machines and state logic ? generate external signals (chip selects, bus interface, etc.) o microcontroller logic that eliminates the need for external aglue logico has the following features: ? ability to interface to multiplexed and non-multiplexed buses ? built-in address latches for multiplexed address/data bus ? ale and reset polarity are programmable ? multiple configurations are possible for interface to many different microcontrollers o four 16-bit counter/timers that have five modes of operation and can be controlled by the ppld macrocells. modes of operation are: pulse and waveform generation, time capture, event counting, and a watchdog timer (real time clock). o eight input priority encoded interrupt controller. four interrupts are generated by the ppld and are user defined. the other four interrupts are generated by the counter/timer's terminal count flags. each interrupt can be individually masked and configured as edge or level sensitive. o page logic is connected to the zplds and expands the mcu address space to up to 16 times
psd5xx family 4 key features (cont.) o programmable power management allows: ? sram, eprom, and zplds to enter standby mode automatically ? disabling of the clock input to the zplds ? zplds to enter a special low power mode (sleep mode), based on turbo bit setting o a security bit prevents reading the psd5xx configuration and the zpld contents. setting this bit will prevent the device from being copied on a device programmer. o built-in security enables the user to block read accesses from a device programmer o package choices include a 68-pin plcc and cldcc, and an 80-pin tqfp. o programmable polarity reset output (includes hysteresis), based on reset input o simple, menu-driven software (psdsoft) allows configuration and design entry on a pc. 3.0 notation throughout this data sheet, references are made to the psd5xx. in most cases, these references also cover the zpsd5xx and zpsd5xxv products. exceptions will be noted. the main difference between the zpsd5xx and the psd5xx is the standby current (isb). the zpsd5xx devices have been rated for a lower standby current. also, there is no low-voltage version of the psd5xx. there is only the low-voltage version of the zpsd5xx, which has a v suffix. 4.0 zpsd background portable and battery powered systems have recently become major embedded control application segments. as a result, the demand for electronic components having extremely low power consumption has increased dramatically. recognizing this need, wsi, inc. has developed a new zero-power technology. zpsd products virtually eliminate the dc component of power consumption reducing it to standby levels. eliminating the dc component is the basis for the words azero powero. zpsd products also minimize the ac power component when the chip is changing states. the result is a programmable microcontroller peripheral family that replaces discrete circuit functions while drawing minimal power.
psd5xx family 5 prog. bus intrf adio port control rd, wr ad0 ad15 pc0 pc7 pd0 pd7 clkin watch dog output interrupt output clkin 60 clkin terminal counts page reg. zpld input bus global config. & security prog. port port a prog. port port b power manager unit vstdby pa0 pa7 pb0 pb7 prog. port port e prog. port port d prog. port port c pe0 pe7 address/data/control bus 4 macrocells 2 macrocells 8pt 4pt 2pt port a macrocells port b macrocells port e macrocells 27pt 61 60 80pt 11pt clkin four 16-bit 256k1m bit eprom 16 k bits sram i/o decoder eprom select sram select peripheral selects macrocell feedback or port input csiop general pld (gpld) peripheral pld (ppld) interrupt controller counter/timers 24 macrocells decode pld (dpld) figure 1. psd5xx block diagram
psd5xx family 6 upon each address or logic input change to the psd, the device powers up from low power standby for a short time. then the psd consumes only the necessary power to deliver new logic or memory data to its outputs as a response to the input change. after the new outputs are stable, the psd latches them and automatically reverts back to standby mode. the i cc current flowing during standby mode and during dc operation is identical. the psd automatically reduces its dc current drain to these low levels and does not require controlling by the csi (chip select) input. disabling the csi pin unconditionally forces the psd to standby mode independent of other input transitions. the only significant power consumption in the psd occurs during ac operation. the psd contains the first architecture to apply zero-power techniques to memory circuit blocks as well as logic. figure 2 compares psd zero-power operation to the operation of a discrete solution. a standard microcontroller (mcu) bus cycle usually starts with an ale (or as) pulse and the generation of an address. the psd detects the address transition and powers up for a short time. the psd then latches the outputs of the pad, eprom and sram to the new values. after finishing these operations, the psd shuts off its internal power, entering standby mode. the time taken for the entire cycle is less than the psd's aaccess time.o the psd will stay in standby mode if the inputs do not change between bus cycles. in an alternate system implementation using discrete eprom, sram and other discrete components, the system will consume operating power during the entire bus cycle. this is because the chip select inputs on the memory devices are usually active throughout the entire cycle. the ac power consumption of the psd may be calculated using the composite frequency of the mcu address and control inputs, as well as any other logic inputs to the zpld. note: the zpsd5xx parts have been rated for a lower standby current (i sb ) than the psd5xx parts. 5.0 integrated power management tm operation ale discrete eprom, sram & logic address eprom access sram access eprom access i cc zpsd zpsd zpsd time figure 2. zpsd power operation vs. discrete implementation
psd5xx family 7 figure 3. psdsoft development t ools psdsilos iii ? silosiii chip simulation psd programmer psdpro/magicpro ? chip programming psd compiler (zpld fitting, address translation) psdabel ? zpld description (state machine, decoding) psdsoft development software psd configuration chip configuration third party programmers code file shown in figure 3 (below) is the software design flow for a psd5xx device. psdsoftewsi's software development suiteeis used throughout the design phase. you start with a design file that is written in psdabel-a high-level hardware description language (hdl). before you compile your design, you must also configure the psd5xx so it knows what signals to expect from your microprocessor and what pre-runtime options should be set (such as the security bit). once you have a design file and have configured the device, you are ready to run the fitter and address translator. the fitter accepts input from psdabel and psd configuration, synthesizes this user logic and configuration, and fits the design to the psd silicon. the address translator process allows the user to map the mcu firmware from a cross-compiler (in intel hex or s-record format) into the nvm memory blocks within the psd. as a result, the mcu firmware is merged with the logic and configuration definition of the psd. the output of the address translator and the fitter is the required object file that is used by a programmer to program the psd device. the object file includes chip configuration, the pld fusemap, and mcu firmware information. psdsilosiii is an optional program that provides functional chip-level simulation of the psd5xx. psdsoft automatically creates files for input to the simulator. these files convey relevant design information to the simulator. as a result, the user only has to create a stim- ulus file since all of the signals and node names are taken from the design file. 6.0 design flow
psd5xx family 8 7.0 psd5xx family there are 7 unique devices in the psd5xx family. the part classifications are based on eprom size and data bus width. the features of each part are listed in table 1. part bus dpld + gpld + ppld i/o timers inter. wd * pmu eprom sram # bit inputs product registered pins contr. kbit k bit terms macrocells 501b1 x8/x16 61 140 30 40 4 * 16 8 1 * 16 yes 256 16 511b1 x8 61 140 30 40 4 * 16 8 1 * 16 yes 256 16 502b1 x8/x16 61 140 30 40 4 * 16 8 1 * 16 yes 512 16 512b0 x8 61 140 30 40 4 * 16 8 1 * 16 yes 512 512b1 x8 61 140 30 40 4 * 16 8 1 * 16 yes 512 16 503b1 x8/x16 61 140 30 40 4 * 16 8 1 * 16 yes 1024 16 513b1 x8 61 140 30 40 4 * 16 8 1 * 16 yes 1024 16 table 1. psd5xx product matrix wd = watchdog timer. pmu = power management unit. * one of the four 16-bit timers.
psd5xx family 9 8.0 table 2. psd5xx pin descriptions pin name pin function type function descriptions adio0 adio15 address/ data bus i/o 1. address/data bus, multiplexed bus mode 2. address bus, non-multiplexed bus mode rd multiple names i multiple functions 1. read 1. read signal 2. e 2. e signal (clock) 3. ds 3. data strobe signal 4. lds 4. low byte data strobe wr multiple names i multiple functions 1. wr 1. write signal 2. r/ w 2. read-write signal 3. wrl 3. low byte write signal csi chip select input i active low, select psd5xx. standby mode if high. reset reset input i reset i/o ports, zpld/macrocells, timers and configuration registers. active low. clkin input clock i clock input to timers, zpld macrocells, zpld array, and apd counter; connect to ground if clock input not used. pa0 pa7 i/o port a i/o multiple functions 1. i/o port 2. zpld/macrocell i/o port 3. latched address outputs (pa0pa7) (a0a7) 4. high address inputs (a16 a23) 5. timer outputs (pa0 pa3) pb0 pb7 i/o port b i/o multiple functions 1. i/o port 2. zpld/macrocell i/o port 3. latched address outputs (pb0pb7) (a0a7) or (a8a15) 4. timer outputs (pb0-pb3) pc0 pc7 i/o port c i/o multiple functions cmos 1. i/o port or 2. zpld input port od 3. latched address outputs (pc0 pc7) (a0a7) 4. data port (d0 d7, non-multiplexed bus) pd0 pd7 i/o port d i/o multiple functions cmos 1. i/o port or 2. zpld input port od 3. latched address outputs (pd0pd7) (a0a7) or (a8a15) 4. data port (d8-d15, non-multiplexed bus) the following table describes the pin names and pin functions of the psd5xx. pins that have multiple names and/or functions are defined by user configuration.
pin name pin function type function descriptions pe0 port pe, pin 0 i/o multiple functions 1. bhe 1. high byte enable, 16 bit data 2. psen 2. read program memory, 8031 signal 3. wrh write high data byte 4. uds 4. upper data strobe 5. siz0 5. byte enable, 68300 signal 6. pe0 6. i/o pin 7. pe0 7. zpld i/o pin 8. pe0 8. latched address out a0 pe1 port pe, pin 1 i/o multiple functions 1. ale 1. address strobe 2. pe1 2. i/o pin 3. pe1 3. zpld i/o pin 4. pe1 4. latched address out a1 pe2 port pe, pin 2 multiple functions 1. intr out 1. interrupt controller output 2. pe2 i/o 2. i/o pin 3. pe2 3. zpld i/o pin 4. pe2 4. latched address out a2 pe3 port pe, pin 3 multiple functions 1. timer0-in 1. timer0 control input 2. pe3 i/o 2. i/o pin 3. pe3 3. zpld i/o pin 4. pe3 4. latched address out a3 pe4 port pe, pin 4 multiple functions 1. timer1-in 1. timer1 control input 2. pe4 i/o 2. i/o pin 3. pe4 3. zpld i/o pin 4. pe4 4. latched address out a4 5. tc0 5. timer0 terminal count pe5 port pe, pin 5 multiple functions 1. timer2-in 1. timer2 control input 2. pe5 i/o 2. i/o pin 3. pe5 3. zpld i/o pin 4. pe5 4. latched address out a5 5. tc1 5. timer1 terminal count pe6 port pe, pin 6 multiple functions 1. timer3-in 1. timer3 control input 2. pe6 i/o 2. i/o pin 3. pe6 3. zpld i/o pin 4. pe6 4. latched address out a6 5. tc2 5. timer2 terminal count pe7 port pe, pin 7 multiple functions 1. apd clk 1. automatic power down clock input 2. pe7 i/o 2. i/o pin 3. pe7 3. zpld i/o pin 4. pe7 4. latched address out a7 5. tc3 5. timer3 terminal count vstby vstby i sram power pin for standby operation (battery backup) v cc v cc i chip v cc power pin gnd gnd i chip ground pin psd5xx family 10 table 2. psd5xx pin descriptions (cont.)
psd5xx family 11 9.0 the psd5xx architecture psd5xx consists of seven major functional blocks: o zpld blocks o bus interface o i/o ports o memory block o power management unit o counter/timer o interrupt controller the functions of each block are described in the following sections. many of the blocks perform multiple functions, and are user configurable. the chip configurations are specified by the user in the psdsoft development software; some are specified by setting up the appropriate bits in the configuration registers during run time. 9.1 zpld block key features o 3 embedded zpld devices o maximum 30 macrocells o combinatorial/registered outputs o maximum 140 product terms o programmable output polarity o user configured register clear/preset o user configured register clock input o 61 inputs o accessible via 24 i/o pins o power saving mode o uv-erasable o generate user defined interrupts to interrupt controller and controls to counter/ timer general description the zpld block has 3 embedded pld devices: o dpld the address decoding pld, generating select signals to internal i/o or memory blocks. o gpld the general purpose pld provides 24 programmable macrocells for general or complex logic implementation; dedicated to user application. o ppld the peripheral pld, includes 6 programmable macrocells. the ppld provides control to the operation of the counter/timer and interrupt controller. figure 4 shows the architecture of the zpld. the pld devices all share the same input bus. the true or complement of the 61 input signals are fed to the programmable and-array. names and source of the input signals are shown in table 3. the pa, pb, pe signals, depending on user configuration, can either be macrocell feedbacks or inputs from port a, b or e.
psd5xx family 12 figure 4. zpld block diagram page reg. adio port prog. port port c prog. port port d pmu csi rd/e/ds wr/r_w reset clkin pgr0 3 a8 a15 a0, a1 pc0 pc7 pd0 pd7 intr2pld and array and array and array and array and array dpld es0 es3 rs0 csiop psel0 psel1 8 i/o macrocells pa 8 i/o macrocells pb 8 i/o macrocells pe 4 output 4 output macrocells 2 output macrocells 27 pt 80 pt 11 pt 8pt 4pt 2pt pt2int4 5 mc2int6 7 mc2tmr0 3 pe0 pe7 pb0 pb7 pa0 pa7 prog. port port a prog. port port b prog. port port e timers intr. ctrl dpld gpld ppld zpld input bus (decoding pld) (general purpose pld) (peripheral pld) wdog2pld the psd5xx architecture
psd5xx family 13 signal name from pa0 pa7 port a inputs or macrocell pa feedback pb0 pb7 port b inputs or macrocell pb feedback pe0 pe7 port e inputs or macrocell pe feedback pc0 pc7 port c inputs pd0 - pd7 port d inputs pgr0 pgr3 page mode register wdog2pld counter/timer intr2pld interrupt controller a8 a15, a0, a1 mcu address lines rd/e/ds mcu bus signal wr/r_w mcu bus signal clkin input clock reset reset input csi csi input (ored with power down from pmu) table 3. zpld input signals the psd5xx architecture (cont.)
psd5xx family 14 9.1.1 the dpld the dpld is used for internal address decoding generating the following eight chip select signals: o es0 es3 eprom selects, block 0 to block 3 o rs0 sram block select o csiop i/o decoder chip select o psel0 psel1 peripheral i/o mode select signals the i/o decoder enabled by the csiop generates chip selects for on-chip registers or i/o ports based on address inputs a[7:0]. as shown in figure 5, the dpld consists of a large programmable and array. there are a total of 61 inputs and 8 outputs. each output consists of a single product term. although the user can generate select signals from any of the inputs, the select signals are typically a function of the address and page register inputs. the select signals, which are active high, are defined by the user in the abel file (psdabel). the address line inputs to the dpld include a0, a1 and a8 a15. if more address lines are needed, the user can bring in the lines through port a to the dpld. 9.1.2 the gpld the structure of the general purpose pld consists of a programmable and array and 3 sets of i/o macrocells. the array has 61 input signals, same as the dpld. from these inputs, aandedo functions are generated as product term inputs to the macrocells. the i/o macrocell sets are named after the i/o ports they are linked to, e.g., the macrocells connected to port a are named pa macrocells. the 3 sets of macrocells, pa, pb and pe, are similar in structure and function. figure 6 shows the output/input path of a gpld macrocell to the port pin with which it is associated. if the port pin is specified as a gpld output pin in psdsoft, the mux in the i/o port cell selects the gpld macrocell as an output of the port pin. the output enable signal to the buffer in the i/o cell can be controlled by a product term from the and array. if the port pin is specified as a zpld input pin, the mux in the gpld macrocell selects the port input signal to be one of the 61 signals in the zpld input bus. the psd5xx architecture
psd5xx family 15 figure 5. dpld logic array pa0 pa7 (8) (8) (8) (8) (8) (4) (10) (2) (3) (1) (1) (inputs) pb0 pb7 pe0 pe7 pc0 pc7 pd0 pd7 pgr0 pgr3 a8 a15, a0, a1 wdog2pld intr2pld csi, clkin reset rd/e/ds wr/r_w es0 es1 es2 es3 rs0 csiop psel0 psel1 4 eprom block selects ram select i/o decoder select peripheral i/o selects dpld inputs : 61 dpld outputs : 8 the psd5xx architecture (cont.)
psd5xx family 16 the psd5xx architecture (cont.) 9.1.2.1 port a macrocell structure figure 6a shows the pa macrocell block, which consists of 8 identical macrocells. each macrocell output can be connected to its own i/o pin on port a. there are 3 user programmable global product terms output from the gpld's and array which are shared by all the macrocells in port a: o pa.oe enable or tri-state port a output pins o pa.pr preset d flip flop in the macrocells o pa.re reset/clear d flip flop in the macrocells two other inputs, clkin and macro-rst, are used as clock and clear inputs to the d flip flop. the clkin comes directly from the clkin input pin. the macro-rst is the same as the reset input pin except it is user configurable. the circuit of a port a macrocell is shown in figure 7. there are 6 product terms from the gpld's and array as inputs to the macrocell. users can select the polarity of the output, and configure the macrocell to operate as: o registered output select output from d flip flop o combinatorial output select output from or gate o gpld input use port a pin as dedicated input o gpld output use port a pin as dedicated output o gpld i/o use port a pin as bidirectional pin o macrocell feedback register feedback for state machine implementations or expander feedback from the combinatorial output, to expand the number of product terms available to another macrocell. in case of oburied feedbacko, where the output of the macrocell is not connected to a port a pin, port a can be configured to perform other user defined i/o functions. the two global product terms assigned for asynchronous clear (pa.re) and preset (pa.pr) are mainly for proper port a macrocell initialization. the macrocell flip-flop can also be cleared during reset by macro-rst, if such an option is chosen. the clock source is always the input clock clkin.
psd5xx family 17 dq figure 5 and array polarity select cl ck pr control clk select mux pt clock pt output enable (oe) pt reset gpld macrocell i/o port cell pt clear clkin macro_rst global clock port pin comb./reg. select gpld macrocell output internal address/data/control bus zpld input bus mux mux mux pcr d d q q wr direction register dq wr d g q ale pdr port input input output address a[0-7] or a[8-15] gpld output special function pts latch ale 60 * * = latch only on port a figure 6. gpld macrocell input/output port the psd5xx architecture (cont.)
and array mc0 pa0 mc1 pa1 mc7 pa7 macro. out pa0input macro. out pa1input macro. out pa7input pt [ 2:0 ] pa0 pt [ 2:0 ] pa1 pt [ 2:0 ] pa7 pa.pr pa.re pa.oe clkin macrorst port a i/o cells pa macrocell psd5xx family 18 figure 6a. pa macrocell block diagram the psd5xx architecture (cont.)
psd5xx family 19 dq pt pt pt pt pt pt and array polarity select pldin select c pr mux mux pa.oe pa.pr pt0 pt1 pt2 pa.re pai macrorst note: i = 7 to 0 clkin macro.out i/o pin pai port a comb/reg select internal address/data bus paiinput zpld bus figure 7. pa macrocell the psd5xx architecture (cont.)
psd5xx family 20 9.1.2.2 port b macrocell structure figure 8 shows the pb macrocell block, which consists of 8 identical macrocells. each macrocell output can be connected to its own i/o pin on port b. the two inputs, clkin and macro-rst, are used as clock and clear inputs to all the macrocells. the clkin comes directly from the clkin input pin. the macro-rst is the same as the reset input pin except it is user configurable. the circuit of a pb macrocell is shown in figure 9. there are 10 product terms from the gpld's and array as inputs to the macrocell. users can select the polarity of the output, and configure the macrocell to operate as: o registered output select output from d flip flop. o combinatorial output select output from or gate. o gpld input use port b pin as dedicated input. o gpld output use port b pin as dedicated output. o gpld i/o use port b pin as bidirectional pin. o macrocell feedback register feedback for state machine implementations or expander feedback from the combinatorial output, to possibly expand the number of product terms available to another macrocell. in case of oburied feedbacko, where the output of the macrocell is not connected to a port b pin, port b can be configured to perform other user defined i/o functions. each d flip flop in the macrocells has its own dedicated asynchronous clear, preset and clock input. the signals are defined as follow: o preset active only if defined by a product term (pbx.pr) o clear two selectable inputs: reset input or user defined product term (pbx.re) o clk two selectable inputs clkin input or user defined product term (pbx.clk). the macrocell is operated in synchronous mode if the clock input is clkin, and is in asynchronous mode if the clock is a product-term clock defined by the user. the psd5xx architecture (cont.)
psd5xx family 21 and array macro .out pb0 .oe pb0 input macro .out pb1 .oe pb1input macro .out pb7 .oe pb7 input ptb0 [ 0..5 ] pb0 .pr pb0 .re pb0 .oe pb0 .clk pb0 ptb1 [ 0..5 ] pb1 .pr pb1 .re pb1 .oe pb1 .clk pb1 ptb7 [ 0..5 ] pb7 .pr pb7 .re pb7 .oe pb7 .clk pb7 clkin macro rst port b i/o cells pb macrocell mc0 mc1 mc7 pb0 pb1 pb7 figure 8. pb macrocell block diagram the psd5xx architecture (cont.)
psd5xx family 22 dq pt pt pt pt pt pt pt pt pt pt and array polarity select comb/reg select c pr mux pldin select mux clk select mux pbi pbi .oe pbi .pr pt0 pt1 pt2 pt3 pt4 pt5 pbi .clk pbi .re macrorst clkin macro . out i/o pin pbi port b internal address/data bus pbi input note: i = 7 to 0 zpld bus figure 9. pb macrocell the psd5xx architecture (cont.)
psd5xx family 23 the psd5xx architecture (cont.) 9.1.2.3 port e macrocell structure figure 10 shows the pe macrocell block, which consists of 8 identical macrocells. each macrocell output can be connected to its own i/o pin on port e. there are 3 user programmable global product terms output from the gpld's and array which are shared by all the macrocells in port e: o pe.oe enable or tri-state port pe output pins o pe.pr preset d flip flop in the macrocells o pe.re reset/clear d flip flop in the macrocells two other inputs, clkin and macro-rst, are used as clock and clear inputs to the d flip flop. the clkin comes directly from the clkin input pin. the macro-rst is the same as the reset input pin except it is user configurable. the circuit of a pe macrocell is shown in figure 11. there are 4 product terms from the gpld's and array as input to the macrocell. users can select the polarity of the output and configure the macrocell to operate as: o registered output select output from d flip flop o combinatorial output select output from or gate o gpld input use port e pin as dedicated input o gpld output use port e pin as dedicated output o gpld i/o use port e pin as bidirectional pin o macrocell feedback register feedback for state machine implementations or expander feedback from the combinatorial output, to possibly expand the number of product terms available to another macrocell. in case of oburied feedbacko, where the output of the macrocell is not connected to port e pin, port e can be configured to perform other user defined i/o functions. if pins pe0 and pe1 are used as bus control signal inputs (ale, psen/bhe), the corresponding macrocells' feedbacks are disabled. the bus control signals are connected to the zpld input bus. the two global product terms assigned for asynchronous clear (pe.re) and preset (pe.pr) are mainly for proper pe macrocell initialization. the macrocell flip-flop can also be cleared during reset by macro-rst, if such an option is chosen. the clock source is always the input clock clkin.
psd5xx family 24 figure 10. pe macrocell block diagram and array mc0 pe0 mc1 pe1 mc7 pe 7 macro .out pe0 input macro .out pe1 input macro .out pe7 input pt pe0 pt pe1 pt pe7 pe .pr pe .re pe .oe clkin macro rst port e i/o cells pe macrocell the psd5xx architecture (cont.)
psd5xx family 25 figure 11. pe macrocell dq pt pt pt pt and array polarity select pldin select c pr mux mux pe .oe pe .pr pt pe .re pei macrorst note: i = 7 to 0 clkin macro .out i/o pin pei port e internal address/data bus peiinput comb/reg select zpld bus the psd5xx architecture (cont.)
psd5xx family 26 9.1.3 the ppld the peripheral programmable logic device (ppld) provides a powerful mechanism for the user to control the operations of the counter/timer and interrupt controller. figure 12 is the ppld block diagram. there are six peripheral macrocells, four are dedicated to the counter/timer, and two to the interrupt controller. the outputs from the four peripheral macrocells, mc2tmr[3:0], are used as load/store/enable inputs to the counter/timer (multiplexed with pin inputs timer[3:0] _in). the remaining two macrocell outputs (mc2int[6:7] ), together with two other product terms (pt2int4, pt2int5), can generate up to 4 user defined interrupts to the interrupt controller. the watch-dog output of the timer (wdog2pld) and interrupt controller (intr2pld) are available as inputs to the zpld's and array. the structure of a peripheral macrocell is shown in figure 13. the cell has two product term inputs from the and array. the user can select the registered or combinatorial output of the macrocell, as well as the output polarity. the registers are clocked by the clkin clock, and are cleared by the reset input during power up. 9.1.4 the zpld power management the zpld implements a zero power mode, which provides considerable power savings for low to medium frequency operations. to enable this feature, the zpld turbo bit in the power management mode register 0 (pmmr0) has to be turned off. if none of the 61 inputs to the zpld are switching for a time period of 70ns, the zpld puts itself into zero power mode and the current consumption is minimal. the zpld will resume normal operation as soon as one or more of the inputs change state. two other features of the zpld provide additional power savings: 1. clock disable: users can disable the clock input to the zpld and/or macrocells, thereby reducing ac power consumption. 2. product term disable: unused product terms in the zpld are disabled by the psdsoft software automatically for further power savings. the zpld power configuration is described in the power management unit section. the psd5xx architecture (cont.)
psd5xx family 27 figure 12. ppld block diagram port e macrocells (4) macrocells (2) counter/ timer interrupt controller and array timer [ 3:0 ] in tc [ 3:0 ] tc [ 3:0 ] mc2tmr [ 3:0 ] wdog2pld intr2pld pt2int4 pt2int5 mc2int6 mc2int7 pt (8) pt (4 ) pt pt mux the psd5xx architecture (cont.)
psd5xx family 28 figure 13. peripheral macrocell dq pt pt and array polarity select comb/reg select c mux pt0 pt1 clkin reset to timer or interrupt controller zpld bus the psd5xx architecture (cont.)
psd5xx family 29 9.2 bus interface the bus interface is very flexible and can be configured to interface to most microcontrollers with no glue logic. table 4 lists some of the bus types to which the bus interface is able to interface. 9.2.1 bus interface configuration the bus interface logic is user configurable. the type of bus interface is specified by the user in the psdsoft software (psd configuration). the bus control input pins have multi-function capabilities. by choosing the right configuration, the psd5xx is able to interface to most microcontrollers, including the ones listed in table 4. in table 5, the names of the bus control input signal pins and their multiple functions are shown. for example, pin pe0 can be configured by the psd configuration software to perform any one of the five functions. examples on the interface between the psd5xx and some typical microcontrollers are shown in following sections. pin name pin pin pin pin pin function function function function function 12345 rd rd e ds lds wr wr r/w wrl pe0 bhe psen wrh uds siz0 pe1 ale ad0 a0 ble table 5. alternate pin functions 9.2.2 psd5xx interface t o a multiplexed bus figure 14 shows a typical connection to a microcontroller with a multiplexed bus. the adio port of the psd5xx is connected directly to the microcontroller address/data bus (ad0-ad15 for 16 bit bus). the ale input signal latches the address lines internally. in a read bus cycle, data is driven out through the adio port transceivers after the specified access time. the internal adio port connection for a 16 bit multiplexed bus is shown in figure 15. the adio port is in tri-state mode if none of the psd5xx internal devices are selected. multiplexed data bus bus control microcontroller width signals mux 8 wr, rd, psen, a0 8031/80c51 mux/non-mux 8/16 r/w, e, bhe, a0 68hc11 mux 8/16 wr, rd, bhe, a0 80c196/80c186 mux 16 wrl, rd, wrh, a0 80c196sp non-mux 16 r/w, lds, uds 68302 non-mux 8/16 r/w, ds, siz0, a0 68340 non-mux 16 r/w, ds, bhe, ble 68330, 68331 non-mux 8 rd, wr 68hc05c non-mux 16 r/w, e, lstrb, a0 68hc12 non-mux 16 r/w, ds 68hc16 table 4. typical microcontroller bus types
psd5xx family 30 9.2.3 psd5xx interface t o non-multiplexed bus figure 16 shows a psd5xx interfacing to a microcontroller with a non-multiplexed address/data bus. the address bus is connected to the adio port, and the data bus is connected to port c and/or port d, depending on the bus width. there is no need for the adio port to latch the address internally, but the user is offered the option to do so in the psd5xx psdsoft software. the data ports are in tri-state mode when the psd5xx is not accessed by the microcontroller. bus interface (cont.) 9.2.4 data byte enable microcontrollers have different data byte orientations with regard to the data bus. the following tables show how the psd5xx handles the byte enable under different bus configurations. even byte refers to locations with address a0 equal to a0o, and odd byte as locations with a0 equal to a1o. bhe a0 d7 d0 x 0 even byte x 1 odd byte table 6. 8-bit data bus table 7. 16-bit data bus with bhe bhe a0 d15 d8 d7 d0 0 0 odd byte even byte 0 1 odd byte 1 0 even byte wrh wrl d15 d8 d7 d0 0 0 odd byte even byte 0 1 odd byte 1 0 even byte table 8. 16-bit data bus with wrh and wrl siz0 a0 d15 d8 d7 d0 0 0 even byte odd byte 1 0 even byte 1 1 odd byte table 9. 16-bit data bus with siz0, a0 lds uds ( a0) d15 d8 d7 d0 0 0 even byte odd byte 1 0 even byte 0 1 odd byte table 10. 16-bit data bus with uds, lds
psd5xx family 31 figure 14. bus interface multiplexed bus, 8 or 16-bit data bus micro- controller ad [ 7:0 ] ad [ 15 : 8 ] ( a [ 15 : 8 ] ) a [ 7:0 ] a [ 15 : 8 ] (optional) (optional) adio port port e wr rd rst csi bhe ale port c port d port a port b psd5xx bus interface (cont.)
ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7 ad8 ad9 ad10 ad11 ad12 ad13 ad14 ad15 ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7 ad8 ad9 ad10 ad11 ad12 ad13 ad14 ad15 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 adio0 adio1 adio2 adio3 adio4 adio5 adio6 adio7 adio8 adio9 adio10 adio11 adio12 adio13 adio14 adio15 r_w ale/as psd5xx internal address bus psd5xx internal data bus latch g latch g psd5xx family 32 figure 15. adio port, 16-bit multiplexed bus interface bus interface (cont.)
psd5xx family 33 figure 16. bus interface non-multiplexed, 8 or 16-bit data micro- controller d [ 15 : 0 ] a [ 15 : 0 ] d [ 15 : 8 ] d [ 7:0 ] a [ 23:16 ] (optional) adio port port e wr rd rst csi bhe ale port c port d port a port b psd5xx 16-bit data only bus interface (cont.)
psd5xx family 34 9.2.5 optional features the psd5xx provides two optional features to add flexibility to the bus interface: 1. address in port a can be configured as high order address (a16-a23) inputs to the zpld for eprom or other decoding. inputs are latched by ale/as if multiplexed bus is selected. other ports can be configured as address input ports for the zpld. these inputs should not be used for eprom decoding and are not latched internally. 2. address out for multiplexed bus only. latched address lines a0-a15 are available on port a, b, c, d, or e. details on the optional features are described in the i/o port section. bus interface (cont.) 9.2.6 bus interface examples the next four figures show the psd5xx interfacing with some popular microcontrollers. the examples show only the basic bus connections; some of the pin names on the psd5xx parts change to reflect the actual pin functions. figure 17 shows an interface to the 80c31. the 80c31 has a 16 bit address bus and an 8-bit data bus. the lower address byte is multiplexed with the data bus. the rd and wr signals are used for accessing the data memory (sram) and the psen signal is for reading program memory (eprom). the ale signal is active high and is used to latch the address internally. port c provides latched address outputs a[7:0]. ports a, b, d, and e (pe2-pe7) can be configured to perform other functions. the rstout reset to the 80c31 is generated by the zpld from the reset input. this configuration eliminates any reset race condition between the 80c31 and the psd5xx. figure 18 shows the 68hc11 interface, which is similar to the 80c31 except the psd5xx generates internal rd and wr from the 68hc11's e and r/w signals. in figure 19, the intel 80c196 microcontroller is interfaced to the psd5xx. the 80c196 has a multiplexed 16-bit address and data bus. the bhe signal is used for data byte selection. ports c and d are used as output ports for latched address a[15:0]. pins pe6 and pe7 can be programmed as zpld outputs to provide the ready and buswidth control signals to the 80c196. figure 20 shows motorola's mc68331 interfacing to the psd5xx. the mc68331 has a 16-bit data bus and a 24-bit address bus. d15-d8 from the mc68331 are connected to port d, and d7 d0 are connected to port c.
psd5xx family 35 figure 17. interfacing psd5xx with 80c31 ea/vp x1 x2 reset int0 int1 t0 t1 p1 . 0 p1 . 1 p1 . 2 p1 . 3 p1 . 4 p1 . 5 p1 . 6 p1 . 7 ad0/a0 ad1/a1 ad2/a2 ad3/a3 ad4/a4 ad5/a5 ad6/a6 ad7/a7 ad8/a8 ad9/a9 ad10/a10 ad11/a11 ad12/a12 ad13/a13 ad14/a14 ad15/a15 rd wr reset csi clkin pe0/psen pe1/ale pe2 pe3 pe4 pe5 pe6 pe7 vstdby p0.0 p0.1 p0.2 p0.3 p0.4 p0.5 p0.6 p0.7 p2.0 p2.1 p2.2 p2.3 p2.4 p2.5 p2.6 p2.7 rd wr psen ale/p txd rxd pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 pa0 pa1 pa2 pa3 pa4 pa5 pa6 pa7 pb0 pb1 pb2 pb3 pb4 pb5 pb6 pb7 31 19 18 9 12 13 14 15 1 2 3 4 5 6 7 8 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 17 16 29 30 11 10 17 16 15 14 13 12 11 10 60 59 58 57 56 55 54 53 27 26 25 24 23 22 21 20 50 49 48 47 46 45 44 43 ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7 a8 a9 a10 a11 a12 a13 a14 a15 9 8 7 6 5 4 3 2 68 67 66 65 64 63 62 61 41 29 40 39 42 38 37 36 34 33 32 31 30 28 80c31 ad [ 7:0 ] ad [ 7:0 ] reset rstout clock reset clock psd5xx rd wr psen ale
psd5xx family 36 figure 18. interfacing psd5xx with 68hc11 xt ex reset irq xirq modb pa0 pa1 pa2 pe0 pe1 pe2 pe3 pe4 pe5 pe6 pe7 vrh vrl ad0/a0 ad1/a1 ad2/a2 ad3/a3 ad4/a4 ad5/a5 ad6/a6 ad7/a7 ad8/a8 ad9/a9 ad10/a10 ad11/a11 ad12/a12 ad13/a13 ad14/a14 ad15/a15 e r/w reset csi clkin pe0 pe1 / ale pe2 pe3 pe4 pe5 pe6 pe7 vstdby pa3 pa4 pa5 pa6 pa7 pb0 pb1 pb2 pb3 pb4 pb5 pb6 pb7 pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 pd0 pd1 pd2 pd3 pd4 pd5 moda e as r/w pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 pa0 pa1 pa2 pa3 pa4 pa5 pa6 pa7 pb0 pb1 pb2 pb3 pb4 pb5 pb6 pb7 8 7 17 19 18 2 34 33 32 43 44 45 46 47 48 49 50 52 51 31 30 29 28 27 42 41 40 39 38 37 36 35 9 10 11 12 13 14 15 16 20 21 22 23 24 25 3 5 4 6 17 16 15 14 13 12 11 10 60 59 58 57 56 55 54 53 27 26 25 24 23 22 21 20 50 49 48 47 46 45 44 43 ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7 a8 a9 a10 a11 a12 a13 a14 a15 9 8 7 6 5 4 3 2 68 67 66 65 64 63 62 61 41 29 40 39 42 38 37 36 34 33 32 31 30 28 68hc11 reset psd5xx ad [ 7:0 ] ad [ 7:0 ] clock reset e ale r/w clock ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7
psd5xx family 37 figure 19. interfacing psd5xx with 80c196 x1 nmi ready cde buswidth reset ach0/p0 . 0 ach1/p0 . 1 ach2/p0 . 2 ach3/p0 . 3 ach4/p0 . 4 ach5/p0 . 5 pcs6/p0 . 6 pcs7/p0 . 7 p2 . 0/txd p2 . 1/rxd p2 . 2/exint p2 . 3/t2clk p2 . 4/t2rst p2 . 5/pwm p2 . 6/t2up dn p2 . 7/t2cap hsi .0 hsi .1 hsi .2 / hso .4 hsi .3 / hso .5 vref angnd ea ad0/a0 ad1/a1 ad2/a2 ad3/a3 ad4/a4 ad5/a5 ad6/a6 ad7/a7 ad8/a8 ad9/a9 ad10/a10 ad11/a11 ad12/a12 ad13/a13 ad14/a14 ad15/a15 rd wr reset csi clkin pe0/bhe pe1/ale pe2 pe3 pe4 pe5 pe6 pe7 vstdby x2 p3 . 0/ad0 p3 . 1/ad1 p3 . 2/ad2 p3 . 3/ad3 p3 . 4/ad4 p3 . 5/ad5 p3 . 6/ad6 p3 . 7/ad7 p4 . 0/ad8 p4 . 1/ad9 p4 . 2/ad10 p4 . 3/ad11 p4 . 4/ad12 p4 . 5/ad13 p4 . 6/ad14 p4 . 7/ad15 rd wr bhe ale inst clkout p1 .0 p1 .1 p1 .2 p1 .3 p1 .4 p1 .5 p1 .6 p1 .7 hso .0 hso .1 hso .2 hso .3 pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 pa0 pa1 pa2 pa3 pa4 pa5 pa6 pa7 pb0 pb1 pb2 pb3 pb4 pb5 pb6 pb7 11 3 43 14 64 16 6 5 7 4 11 10 8 9 18 17 15 44 42 39 33 38 24 25 26 27 13 12 2 12 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 61 40 41 62 63 65 59 58 57 56 55 48 47 46 50 49 44 43 17 16 15 14 13 12 11 10 60 59 58 57 56 55 54 53 27 26 25 24 23 22 21 20 50 49 48 47 46 45 44 43 ad0 ad1 ad2 ad3 ad4 ad5 ad6 ad7 ad8 ad9 ad10 ad11 ad12 ad13 ad14 ad15 9 8 7 6 5 4 3 2 68 67 66 65 64 63 62 61 41 29 40 39 42 38 37 36 34 33 32 31 30 28 reset d [ 15 : 0 ] d [ 15 : 0 ] reset ready buswidth rd wr bhe ale clkout psd5xx 80c196
psd5xx family 38 figure 20. interfacing psd5xx with motorola 68331 d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 reset dsack0 dsack1 irq1 irq2 irq3 irq4 irq5 irq6 irq7 ad0 / a0 ad1 / a1 ad2 / a2 ad3 / a3 ad4 / a4 ad5 / a5 ad6 / a6 ad7 / a7 ad8 / a8 ad9 / a9 ad10 / a10 ad11 / a11 ad12 / a12 ad13 / a13 ad14 / a14 ad15 / a15 ds r/w reset csi clkin pe0/siz0 pe1/ale pe2 pe3 pe4 pe5 pe6 pe7 vstdby a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 a17 a18 a19 cs6 a20 cs7 a21 cs8 a22 cs9 a23 cs10 as r w ds siz0 siz1 clkout csboot brcs0 bgcs1 bgackcs2 fc0cs3 fc1cs4 fc2cs5 pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 pa0 pa1 pa2 pa3 pa4 pa5 pa6 pa7 pb0 pb1 pb2 pb3 pb4 pb5 pb6 pb7 d0 111 d1 110 d2 109 d3 108 d4 105 d5 104 d6 103 d7 102 d8 100 d9 99 d10 98 d11 97 d12 94 d13 93 d14 92 d15 91 68 89 88 77 76 75 74 73 72 71 d0 111 d1 110 d2 109 d3 108 d4 105 d5 104 d6 103 d7 102 d8 100 d9 99 d10 98 d11 97 d12 94 d13 93 d14 92 d15 91 68 89 88 77 76 75 74 73 72 71 90 20 21 22 23 24 25 26 27 30 31 32 33 35 36 37 38 41 42 121 122 123 124 125 82 79 85 81 80 66 112 113 114 115 118 119 120 17 16 15 14 13 12 11 10 60 59 58 57 56 55 54 53 27 26 25 24 23 22 21 20 50 49 48 47 46 45 44 43 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 a16 a17 a18 ale rw ds siz0 clkout d0 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 9 8 7 6 5 4 3 2 68 67 66 65 64 63 62 61 41 29 40 39 42 38 37 36 34 33 32 31 30 28 reset d [ 15 : 0 ] d [ 15 : 0 ] a [ 18 : 0 ] a [ 18 : 0 ] reset psd5xx mc68331
psd5xx family 39 there are 5 programmable 8-bit i/o ports: port a, port b, port c, port d and port e. these ports all have multiple operating modes, depending on the configuration. some of the basic functions are providing input/output for the zpld, the counter/timer, or can be used for standard i/o. each port pin is individually configurable, thus enabling a single 8-bit port to perform multiple functions. the i/o ports occupy 256 bytes of memory space as defined by acsiopo. refer to the system configuration section for i/o register address offset. to set up the port configuration the user is required to: 1. define i/o port chip select (csiop) in the abel file. 2. initialize certain port configuration registers in the user's program and/or 3. specify the configuration in the psd5xx psdsoft software. 4. unused input pins should be tied to v cc or gnd. the following is a description of the operating modes of the i/o ports. the functions of the port registers are described in later sections. 9.3.1 standard mcu i/o the standard mcu i/o mode provides additional i/o capability to the microcontroller. in this mode, the ports can perform standard i/o functions such as sensing or controlling various external i/o devices. operation options of this mode are as follows: o configuration 1. declare pins or signals which are used as i/o in the abel file (psdsoft). 2. set the bit or bits in the control register to o1o. 3. as output port write output data to data out register set direction register to output mode 4. as input port set direction register to input mode read input from data in register the port remains an output or input port as long as the direction register is not changed. 9.3.2 pld i/o the pld i/o mode enables the port to be configured as an input to the zpld, or as an output from the gpld macrocell. the output can be tri-stated with a control signal defined by a product term from the zpld. this mode is configured by the user in the psd5xx psdsoft software, and is enabled upon power up. for a detailed description, see the section on the zpld. o configuration 1. declare pins or signals in the abel file (psdsoft) 2. write logic equations in the abel file. 3. psdcompiler maps the pld function to the psd. 9.3 i/o ports
psd5xx family 40 9.3.3 address out for microcontrollers with a multiplexed address/data bus, the i/o ports in address-out mode are able to provide latched address outputs (a0 a15) to external devices. this mode of operation requires the user to: o configuration 1. declare the pins used as address line outputs in the abel file psdsoft. 2. write a0o to the corresponding bit in the control register associated with each i/o port. 3. set the direction register to output mode. 9.3.4 address in 1. for port a as other address line (a2 a7 and a16 a23) inputs to the dpld. additional address inputs included in the eprom decoding must come from port a. the address inputs are latched internally by ale/as if multiplexed bus is specified in psdsoft. 2. for ports c and d as adress inputs to the zpld for general decoding, should not be used in eprom decoding. o configuration 1. declare pins or signals used as address in in the abel file (psdsoft). 2. write latch equations in the abl file, e.g., a16.le = ale 3. include latched address in logic equations. 9.3.5 data port in this mode, the port is acting as a data bus port for a microcontroller which has a non-multiplexed address/data bus. in this configuration, the data port is connected to the data bus of the microcontroller and the adio port is connected to the address bus. o configuration select the non-multiplexed bus option in psd configuration (psdsoft). 9.3.6 special function out this mode is per-pin configurable. when enabled, the special function assigned to the particular pin is driven out. special functions consist of timer and interrupt outputs. o configuration 1. specify the output function in the psd configuration (psdsoft). 2. psd compiler assigns pins for the selected function. 3. write a1o to the corresponding bit in the special function register. i/o ports (cont.)
psd5xx family 41 9.3.7 alternate function in this mode is per-pin configurable and enables the user to define the pins in port e to perform alternate function. alternate function includes inputs to counter/timers and apd clock. o configuration 1. select input functions in psd configuration 2. psd compiler assigns pins for the selected function. 9.3.8 peripheral i/o this mode enables the microcontroller to read or write to a peripheral though port a. when there is no read/write operation, port a is tri-stated. one of the applications of peripheral i/o is in a dma based design. o configuration 1. declare the pins used as peripheral i/o in the abel file. 2. write logic equations for psel0 and psel1. 3. write a a1o to the pio bit in the vm register to activate the peripheral i/o operation. see the section on peripheral i/o for a detailed description. 9.3.9 open drain outputs this mode enables the user to configure port c and d pins as open drain outputs. cmos output is the default configuration. writing a1o to the corresponding bit in the open drain register changes the pin to open drain output. port mode port a port b port c port d port e standard mcu i/o yes yes yes yes yes pld i/o yes yes input only input only yes address out yes yes yes yes yes address in yes yes * yes * yes * yes * data port yes yes special function out yes yes yes alternate function in yes peripheral i/o yes open drain yes yes * for external decoding. cannot be latched by ale. table 11. operating modes of the i /o ports the following table summarizes the operating modes of the i/o ports. not all functions are available to every port. i/o ports (cont.)
psd5xx family 42 9.3.10 port registers there are two sets of registers per i/o port: the port configuration registers (pcr) which consist of four 8-bit registers; and the port data registers (pdr) which include three 8-bit registers. the pcr is used for setting up the port configuration, while the pdr enables the microcontroller to write or read port data or status bits. tables 12 and 13 show the names and the registers and the ports to which they belong. all the registers in the pcr and pdr are 8-bits wide and each bit is associated with a pin in the i/o port. in table 14, the lsb of the data in register of port a is connected to pin pa0, and the msb is connected to pa7. this pin configuration also applies to other registers and ports. for example, in the direction register of port a, writing a hex value of 07 to the register configures pins pa0 pa2 as output pins, while pa3 pa7 remain as input pins. registers can be accessed by the microcontroller during normal read/write bus cycles. the i/o address offset of the registers are listed in the system configuration section. i/o ports (cont.) register name port write/read control register a,b,c,d,e write/read direction register a,b,c,d,e write/read open drain register c,d write/read special function register a,b,e write/read pld i/o register a,b,e read table 12. port configuration registers (pcr) register name port read/write data in register a,b,c,d,e read data out register a,b,c,d,e write/read macrocell out register a,b,e read table 13. port data registers (pdr) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 pa7 pin pa6 pin pa5 pin pa4 pin pa3 pin pa2 pin pa1 pin pa0 pin table 14. data in register port a bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 pa7 pin pa6 pin pa5 pin pa4 pin pa3 pin pa2 pin pa1 pin pa0 pin =0 =0 =0 =0 =0 =1 =1 =1 direction register port a (example: pins pa0 pa2 as output, pa3 pa7 as input)
psd5xx family 43 control register this register is used in both standard mcu i/o mode and address out modes. for setting a standard mcu i/o mode, a a1o must be written to the corresponding bit in the register. writing a a0o to the register is required for the address out mode. the register has a default value of a0o after reset. direction register this register is used to control the direction of data flow in the i/o ports. writing a a1o to the corresponding bit in the register configures the port to be an output port, and a a0o forces the port to be an input port. the i/o configuration of the port pins can be determined by reading the direction register. after reset, the pins are in input mode. open drain register this register determines whether the output pin driver of port c or d is a cmos driver or an open drain driver. writing a a0o to the register selects a cmos driver, while a a1o selects an open drain driver. special function register writing a a1o bit to this register sets up the corresponding pin to operate in special function out mode. pld i/o register this is a read only status register. reading a o1o indicates the corresponding pin is configured as a pld pin. a o0o indicates the pin is an i/o pin. data in register this register is used in the standard mcu i/o mode configuration to read the input pins. data out register this register holds the output data in the standard mcu i/o mode. the contents of the register can also be read. macrocell out register this register enables the user to read the outputs of the gpld macrocell (pa, pb, and pe macrocells). i/o register address offset the i/o register can be accessed by the microcontroller during normal read/write bus cycles. the address of a register is defined as: csiop + register address offset the csiop is the base address that is defined in the abel file and occupies a 256 byte space. the register address offset lies within this 256 byte space. tables 15 and 15a are the address offset of the registers. i/o ports (cont.)
psd5xx family 44 table 15a. register address offset (for 16-bit motorola microcontrollers in 16-bit mode. use table 15 if 8-bit mode is selected.) address offset register name port a port b port c port d port e data in 00 01 10 11 20 control 02 03 12 13 22 data out 04 05 14 15 24 direction 06 07 16 17 26 open drain 18 19 special function 08 09 28 pld i/o 0a 0b 2a macrocell out 0c 0d 2c table 15. register address offset i/o ports (cont.) address offset register name port a port b port c port d port e data in 01 00 11 10 21 control 03 02 13 12 23 data out 05 04 15 14 25 direction 07 06 17 16 27 open drain 19 18 special function 09 08 29 pld i/o 0b 0a 2b macrocell out 0d 0c 2d
psd5xx family 45 9.3.11 port a functionality and structure port a is the most flexible of all the i/o ports. it can be configured to perform one or more of the following functions: o standard mcu i/o mode o pld i/o o address out latched address lines assigned to pins pa[0-7] o address in input port for other lines, inputs can be latched by ale. o special function out pins pa0 pa3 can be configured as dedicated timer outputs. o peripheral i/o figure 21 shows the structure of a port a pin. if the pin is configured as an output port, the multiplexer selects one of its four inputs as output. if the pin is configured as an input, the input connects to : 1. data in register as input in standard mcu i/o mode or 2. pa macrocell as pld input or 3. pa macrocell as address in input (latched for multiplexed bus). 9.3.12 port b functionality and structure port b is similar to port a in structure. it can be configured to perform one or more of the following functions: o standard mcu i/o mode o pld i/o o address out address lines a[0-7] for 8-bit multiplexed bus, or address lines a[8-15] for 16-bit multiplexed bus are assigned to pins pb[0-7]. o special function out pins pb0 - pb3 are configured as dedicated timer outputs. figure 22 shows the structure of a port b pin. if the pin is configured as an output port, the multiplexer selects one of its four inputs as output. if the pin is configured as input, the input connects to : o data in register as input in standard mcu i/o mode or o pb macrocell as pld input i/o ports (cont.)
psd5xx family 46 figure 21. port a pin structure mux pdr port a pin dq d g q dq control gpldinput pcr ale wr ale pa . oe special func. gpldoutput ale wr internal address / data bus data out address pcr dir. reg. latch a [ 07 ] the psd5xx architecture (cont.)
psd5xx family 47 figure 22. port b pin structure mux pdr port b pin dq d g q dq control gpldinput pcr wr ale pb .oe special func. gpldoutput ale wr internal address / data bus data out address pcr dir. reg. a[0 7] or a[8 15] the psd5xx architecture (cont.)
psd5xx family 48 9.3.13 port c and port d functionality and structure port c and d are identical in function and structure and each can be configured to perform one or more of the following operating modes: o standard mcu i/o mode o pld input direct input to zpld o address out latched address outputs port c: a[0-7] are asigned to pins pc[0-7] port d: a[0-7] for 8-bit multiplexed bus, or a[8-15] for 16-bit multiplexed bus are assigned to pins pd[0-7] o data port port c: d[0-7] for 8-bit non-multiplexed bus port d: d[8-15] for 16-bit non-multiplexed bus o open drain select cmos or open drain driver figures 23 and 24 show the structure of a port c or d pin. if the pin is configured as output port, the multiplexer selects one of the two inputs as output. if the pin is configured as input, the input connects to : o data in register as input in the standard mcu i/o mode or o zpld input 9.3.14 port e functionality and structure port e can be configured to perform one or more of the following functions: o standard mcu i/o mode o pld i/o o address out latched address lines a[0-7] are assigned to pins pe[0-7]. o special function out in this mode, port e pin is configured as an output port for the following signals: pe2 interrupt interrupt output from interrupt controller pe4 terminal count output, timer0 pe5 terminal count output, timer1 pe6 terminal count output, timer2 pe7 terminal count output, timer3 o alternate function in in this mode, the inputs to port e pins are: pe0 bhe/ or psen/ or wrh/ or uds/ or siz0 pe1 ale pe3 timer0-in :load/store/enable/ disable input to timer 0 pe4 timer1-in :load/store/enable/disable input to timer 1 pe5 timer2-in :load/store/enable/disable input to timer 2 pe6 timer3-in :load/store/enable/disable input to timer 3 pe7 apd clk :clock input for automatic power down counter figure 25 shows the structure of a port e pin. the control logic block selects one of four sources through the multiplexer for pin output. if the pin is configured as input, the input goes to: o data in register as input in standard mcu i/o mode or o pe macrocell as pld input or o alternate function in i/o ports (cont.)
psd5xx family 49 figure 23. port c pin structure mux pdr port c pin dq d g q dq control gpldinput * pcr wr ale ale wr data * internal address / data bus data out address pcr dir. reg. d [ 07 ] a [ 07 ] * data bus d [07] is not connected to gpldinput. i/o ports (cont.)
psd5xx family 50 figure 24. port d pin structure mux pdr port d pin dq d g q dq control gpldinput * pcr wr ale ale wr data * internal address / data bus data out address pcr dir. reg. d [815] a [ 07 ] or a [815] * data bus d [815] is not connected to gpldinput. i/o ports (cont.)
psd5xx family 51 figure 25. port e pin structure mux pdr port e pin dq d g q dq control gpldinput alt func. in pcr wr ale pe . oe special func. gpldoutput ale wr internal address / data bus data out address pcr dir. reg. i/o ports (cont.)
psd5xx family 52 the psd5xx provides eprom memory for code storage and sram memory for scratch pad usage. chip selects for the memory blocks come from the dpld decoding logic and are defined by the user in the psdsoft software. figure 26 shows the organization of the memory block. all psd families use zero-power memory techniques that place memory into standby between mcu accesses. the memory becomes active briefly after an address transition, then delivers new data to the outputs, latches the outputs, and returns to standby. this is done automatically and the designer has to do nothing special to benefit from this feature. 9.4.1 eprom the psd5xx provides three eprom densities: 256kbit, 512kbit or 1mbit. the eprom is divided into four 8k, 16k or 32k byte blocks. each block has its own chip select signals (es0 es3). the eprom can be configured as 32k x 8, 64k x 8 or 128k x 8 for microcontrollers with an 8-bit data bus. for 16-bit data buses, the eprom is configured as 16k x 16, 32k x 16, or 64k x 16. 9.4.2 sram the sram has 16kbits of memory, organized as 2k x 8 or 1k x 16. the sram is enabled by the chip select signal rs0 from the dpld. the sram has a battery back-up (stby) mode. this back-up mode is invoked when the v cc voltage drops under the vstby voltage by 0.6 v. the vstby voltage is connected only to the sram and cannot be lower than 2.7 volts. the sram data retention voltage is 2 volts. 9.4.3 memory select map the eprom and sram chip select equations are defined in the abel file in terms of address and other dpld inputs. the memory space for the eprom chip select (es0 es3) should not be larger than the eprom block (8kb, 16kb or 32kb) it is selecting. the following rules govern how the internal psd5xx memory selects/space are defined: o the eprom blocks address space cannot overlap o sram, internal i/o and peripheral i/o space cannot overlap o sram, internal i/o and peripheral i/o space can overlap eprom space, with priority given to sram or i/o. the portion of eprom which is overlapped cannot be accessed. the peripheral i/o space refers to memory space occupied by peripherals when port a is configured in the peripheral i/o mode. 9.4 memory block
psd5xx family 53 figure 26. memory block diagram ( 128kb eprom) es0 es1 es2 es3 16k x 8 16k x 8 1k x 8 1k x 8 16k x 8 16k x 8 16k x 8 16k x 8 16k x 8 16k x 8 sram block rs0 odd byte odd byte d [ 815 ] even byte d [ 07 ] eprom blocks memory block (cont.)
psd5xx family 54 9.4.4 memory select map for 8031 application the 8031 family of microcontrollers has separate code memory space and data memory space. this feature requires a different memory select map. two modes of operation are provided for 8031 applications. the selection of the modes is specified in the psd5xx psdsoft software (psdconfiguration): o separate space mode in this mode, the psen signal is used to access code from eprom, and the rd signal is used to access data from sram. the code memory space is separated from the data memory space. o combined space mode in this mode, the eprom can be accessed by psen or rd. the eprom is used for code and data storage. the memory block's address space cannot overlap. if data and code memory blocks must overlap each other, the rd signal can be included as an additional address input in generating the eprom chip select signals (es0 es3). in this case the eprom access time is from the rd valid to data valid. figures 27a and 27b show the memory configuration in the two modes. in some applications it is desirable to execute program codes in sram. the psd5xx provides this option by enabling psen to access sram. to activate this option, the srcode bit of the vm register must be set to a1o (see table 16). sram space can overlap eprom space and has priority when psen is used. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 * *** ** srcode pio 1=on 1=on * = reserved for future use, bits set to zero. table 16. vm register memory block (cont.)
psd5xx family 55 figure 27a. 8031 memory modes eprom dpld sram es0 es1 es2 es3 rs0 rd oe oe srcodeen psen separate space mode memory block (cont.) figure 27b. 8031 memory modes eprom dpld sram es0 es1 es2 es3 rs0 psen rd rd oe oe srcode en psen rd combined space mode
psd5xx family 56 9.4.5 peripheral i /o the peripheral i/o mode is one of the operating modes of port a. in this mode, port a is connected to the data bus of peripheral devices. port a is enabled only when the microcontroller is accessing the devices, otherwise the port is tri-stated. this feature enables the microcontroller to access external devices without requiring buffers and decoders. figure 28 shows the structure of port a in the peripheral i/o mode. the memory address space occupied by the devices are defined by two signals: psel0 and psel1. the signals are direct outputs from the dpld. whenever any of the signals is active, the port a driver is enabled, and the direction of the data flow is determined by the rd/wr signals. the peripheral i/o mode and the peripheral select signals are configured and defined in the psdsoft software (see the section on i/o port for configurations). the pio bit in the vm register (see table 16) also needs to be set to a1o by the user to initialize the peripheral i/o mode. the peripheral i/o mode can be used, for example, in dma applications where the microcontroller does not support dma operations, such as tri-stating the address/data bus. figure 29 shows a block diagram of a microcontroller and psd5xx based design that makes use of this mode. in this application, the microcontroller has a multiplexed bus which is connected to the adio port. the c and d ports connect to the peripheral address bus and are both configured in address out mode. port a is configured in the peripheral i/o mode and is connected to the peripheral data bus. port b and e are used to generate control signals. during normal activity, the microcontroller has access to any peripheral (memory or i/o device) through the psd5xx device. when there is a dma request, the microcontroller tri-states the address bus on port c and d by writing a a0o to the port direction registers. the dma controller then takes over the data and address buses after receiving acknowledgement from the microcontroller. figure 28. port a in peripheral i/o mode rd psel0 psel1 d0 d7 wr pa0 pa7 peripheral i/o
psd5xx family 57 figure 29. psd5xx peripheral i/o configuration micro- controller ad [ 07 ] a [ 8 15 ] a [ 07 ] a [ 815 ] d [ 07 ] dma ack adio port port e wr rd rst csi bhe ale port c port d port a port b psd5xx memory i/o device dma controller peripheral # 1 peripheral # 2 dmareq rd wr csi peripheral i/o
psd5xx family 58 the psd5xx provides many power saving options. by configuring the pmmrs (power management mode registers), the user can reduce power consumption. table 17 shows the bit configuration of the pmmr0 and pmmr1. the microcontroller is able to control the power consumption by changing the pmmr bits at run time. 9.5.1 standby mode there are two standby modes in the psd5xx: o power down mode o sleep mode 9.5.2 power down in this mode, the internal devices are shut down except for the i/o ports. there are three ways the psd5xx can enter into the power down mode: by controlling the csi input, by activating the automatic power down (apd) logic, or when none of the inputs are changing and the turbo bit is off. o the csi the csi input pin is an active low signal. when low, the signal selects and enables the psd5xx. the psd5xx enters into power down mode immediately when the signal turns high. this signal can be controlled by the microcontroller, external logic or it can be grounded. the csi turns off the internal bus buffers in standby mode. the address and control signals from the microcontroller are blocked from entering the zpld as inputs. o the apd logic the apd unit enables the user to enter a power down mode independent of controlling the csi input. this feature eliminates the need for external logic (decoders and latches) to power down the psd. the apd unit concept is based on tracking the activity on the ale pin. if the apd unit is enabled and ale is not active, the 4-bit apd counter starts counting and will overflow after 15 clocks, generating a pd (power down) signal powering down the psd. if sleep mode is enabled, then pd signal will also activate the sleep mode. immediately after ale starts pulsing the psd will get out of the power down or sleep mode. the operation of apd is controlled by the pmmr (see figure 30a). pmmr1 bit 0 selects the source of the apd counter clock. after reset the apd counter clock is connected to pe7 (apd_clk) on the psd. in order to guarantee that the apd will not overflow there should be less than 15 apd clocks between two ale pulses. if clkin frequency is adequate, then it can be connected to the apd and pe7 is used for other functions. the next step is to select the ale power down polarity. usually, mcus entering power down will freeze their ale at logic high or low. by programming bit 1 of pmmr0 the power down polarity can be defined for the apd. if the apd detects that the ale is in the power down polarity for 15 apd counter clocks then the psd will enter a power down mode. to enable the apd operation, bit 2 in the pmmr0 should be set high. 9.5.3 sleep mode the sleep mode is activated if the sleep en bit, the apd en bit, and the ale polarity bit in the pmmr are set, and the apd counter has overflowed after 15 clocks (see figure 30). in sleep mode the psd5xx consumes less power than the power down mode, with typical i cc reduced to 10 m a(1 m a for zpsd5xx devices). in this mode, the counter/timers, the interrupt controller and the zpld still monitor their inputs and respond to them. as soon as the ale starts pulsing, the psd5xx exits the sleep mode. the psd access time from sleep mode is specified by t lvdv1 . the zpld response time to an input transition is specified by t lvdv2 . 9.5 power management unit
psd5xx family 59 clr clk apd counter apd clk pmmr1 - bit 0 to other circuits mux apd clear logic apd enable pmmr0 - bit 2 ale polarity pmmr0 - bit 1 ale reset apd clk clkin csi sleep enable pmmr1 - bit 1 sleep mode eprom select sram select i/o select power down pd z p l d figure 30. power management unit figure 30a. automatic power down unit (apd) flow chart apd disabled need apd clk yes yes no no reset set apd clk in pmmr1 bit 0 set ale pd polarity in pmmro bit 1 csi = o1o need sleep mode set sleep mode in pmmr1 bit 1 ale idle and 15 apd clock ale idle and 15 apd clock ? set enable apd in pmmr0 bit 2 ? set pmmr0 bit 0 ? set enable apd in pmmr0 bit 2 ? set pmmr0 bit 0 disable clocks zpld aclk, zpld rclk, tmr zpld disable clocks zpld aclk, zpld rclk, tmr zpld psd in power down mode psd in sleep mode power management unit (cont.)
psd5xx family 60 apd en bit ale power ale status apd counter down polarity 0 x x not counting 1 x pulsing not counting 111 counting (activates standby mode after 15 clocks) 100 counting (activates standby mode after 15 clocks) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 tmr clk zpld zpld zpld apd ale pd * rclk aclk turbo cmiser enable polarity 1 = off 1 = off 1 = off 1 = off 1 = on 1 = on 1 = high pmmr0 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 ****** sleep apd clk mode 1 = on 1 = clkin pmmr1 table 17. power management mode registers (pmmr0, pmmr1) table 18. apd counter operation power management unit (cont.) bit 0 * = should be set to high (1) to operate the apd. bit 1 0 = ale power down (pd) polarity low. 1 = ale power down (pd) polarity high. bit 2 0 = automatic power down (apd) disable. 1 = automatic power down (apd) enable. bit 3 0 = eprom/sram cmiser is off. 1 = eprom/sram cmiser is on. bit 4 0 = zpld turbo is on. zpld is always on. 1 = zpld turbo is off. zpld will power down when inputs are not changing. bit 5 0 = zpld clock input into the array from the clkin pin input is connected. every clock change will power up the zpld when turbo bit is off. 1 = zpld clock input into the array from the clkin pin input is disconnected. bit 6 0 = zpld clock input into the the macrocell registers from the clkin pin input is connected. 1 = zpld clock input into the the macrocell registers from the clkin pin input is disconnected. bit 7 0 = in the psd5xx clock input is connected to the timer. 1 = in the psd5xx clock input is disconnected from the timer. bit 0 0 = automatic power down unit clock is connected to port e7 (pe7) alternate function input. 1 = automatic power down unit clock is connected to the psd clock input (clkin). bit 1 0 = sleep mode disabled. 1 = sleep mode enabled. bit 27 0 = reserved for future use, should be set to zero.
psd5xx family 61 power management unit (cont.) 9.5.4 other power saving options the psd5xx provides additional power saving options. these options, except the sram standby mode, can be enabled/disabled by setting up the corresponding bit in the pmmr. o eprom the eprom power consumption in the psd is controlled by bit 3 in the pmmr0 eprom cmiser. upon reset the cmiser bit is off. this will cause the eprom to be on at all times as long as csi is enabled (low). the reason this mode is provided is to reduce the access time of the eprom by 10 ns relative to the low power condition when cmiser is on. if csi is disabled (high) the eprom will be deselected and will enter standby mode (off) overriding the state of the cmiser. if cmiser is set (on) then the eprom will enter the standby mode when not selected. this condition can take place when csi is high or when csi is low and the eprom is not accessed. for example, if the mcu is accessing the sram, the eprom will be deselected and will be in low power mode. an additional advantage of the cmiser is achieved when the psd is configured in the by 8 mode (8 bit data bus). in this case an additional power savings is achieved in the eprom (and also in the sram) by turning off 1/2 of the array even when the eprom is accessed (the array is divided internally into odd and even arrays). the power consumption for the different eprom modes is given in the dc characteristics table under i cc (dc) eprom adder. o sram standby mode the sram has a dedicated supply voltage v stby that can be used to connect a battery. when v cc becomes lower than v stby 0.6 then the psd will automatically connect the v stby as a power source to the sram. the sram standby current (i stby ) is typically 0.5 m a. sram data retention voltage v df is 2 v minimum. o zero power zpld zpld power/speed is controlled by the zpld_turbo bit (bit 4) in the pmmr0. after reset the zpld is in turbo mode and runs at full power and speed. by setting the bit to a1o, the turbo mode is disabled and the zpld is consuming zero power current if the inputs are not switching for an extended time of 100 ns. the propagation delay time will be increased by 10ns after the turbo bitis set to a1o (turned off) if the inputs change at a frequency of less than 15 mhz.
psd5xx family 62 power management unit (cont.) port configuration pin status i/o port unchanged zpld output depend on inputs to the zpld address out undefined data port tri-stated special function out depending on status of clock input peripheral i/o tri-stated table 20. i/opin status during power down and sleep mode o input clock the psd5xx provides the option to turn off the clock inputs to save ac power consumption. the clock input (clkin) is used as a source for driving the following modules: o zpld array clock input o zpld macrocell clock flip flop o apd counter clock o counter/timers clock during power down or if any of the modules are not being used the clock to these modules should be disabled. to reduce ac power consumption, it is especially important to disable the clock input to the zplds array if it is not used as part of a logic equation. the zpld array clock can be disabled by setting pmmr0 bit 5 (zpld aclk). the zpld macrocell clock input can be disabled by setting pmmr0 bit 6 (zpld rclk). the timer clock can be disabled by setting pmmr0 bit 7 (tmr clk). the apd counter clock will be disabled automatically if power down or sleep mode is entered through the apd unit. the input buffer of the clkin input will be disabled if bits 5 7 pmmr0 are set and the apd has overflowed. the counter/timers can operate in sleep mode if the tmr clk bit is low, but the power consumption will be based on the frequency of operation (clkin frequency). notes: 1. power down does not affect the operation of the zpld. the zpld operation in this mode is based only on the zpld_turbo bit. 2. in sleep mode any input to the zpld will have a propagation delay of t lvdv2 . 3. pld recovery time to normal operation after exiting sleep mode. an input to the zpld during the transition will have a propagation delay time of t lvdv3 . pld pld access access propagation recovery time recovery delay time to time to normal normal operation access power down normal t pd 0 no access t lvdv (note 1) sleep t lvdv2 t lvdv3 no access t lvdv1 (note 2) (note 3) summary of psd5xx t iming and standby current during power down and sleep modes
psd5xx family 63 general description the psd5xx contains a powerful set of four 16 bit counter/timers, each controlled by either ppld outputs, external pins or software. the counter/timers aid the user in counting external events and/or generating accurate delays. these can be operated as counters or timers. in event-count, time capture and watchdog modes, the counter/timers work as counters, whereas in waveform and pulse modes they work as timers. all counter/timers are capable of generating interrupts through the on-board interrupt controller. each of the counter/timers consist of a counter/timer command register, counter/timer image register and counter/timer register. all four counter/timers share a global command register, a software load/store register, a freeze command register and the status register. counter/timer 2 can support watchdog operations. all counter/timers share a common clock input and delay cycle register used in scaling down the input clock to the counter/timer. the maximum resolution of the counter/timer is the input clock of the psd5xx divided by four. the maximum input clock frequency to the psd5xx is 30 mhz. figures 31 and 32 describe the general features of the counter/timers. features o four 16 bit counter/timers. o five modes of operation waveform mode pulse mode event counter mode time capture mode watchdog mode * o each counter/timer can be controlled by an input pin, dedicated ppld macrocell or software. o each counter/timer has an output to the interrupt controller. o the watchdog output is routed through the pld and can be programmed to be output at any pld output pin. o programmable input and output polarity. o counter/timer can be programmed as up or down counter, except in watchdog mode. o all counters have the operating frequency range of dc to 7.0 mhz (i.e 143 ns maximum resolution at 7.0 mhz). higher resolution can be achieved by using in conjunction with the gpld macrocells. o high resolution divisor unit for counter clocking purposes. o can easily interface with any 8 or 16 bit microcontroller or microprocessor. see process change notice related to event count mode on page 148. 9.6 psd5xx counter/timer ( * ) counter/timer-2 can operate in watchdog mode.
psd5xx family 64 figure 31. counter /timer block diagram global command register delay cycle register freeze command register software load/store register status register control timer/ counter 0 timer/ counter 1 timer/ counter 2 * timer / counter 3 ctu0 ctu1 ctu2 ctu3 * can also function as watchdog timer pa0 pa3 or pb0 pb3 psd5xx data bus terminal counts to interrupt controller and port e pe3 pe6 ppld macrocells watchdog output to ppld timer /counter outputs pin control psd5xx counter /timer (cont.)
psd5xx family 65 figure 32. counter/timer and interrupt controller interface with other internal blocks port e pin/ macrocell command input programmable clock prescaler global cmd reg dlcy reg freeze cmd reg s'ware load/store status reg counter/ timer 0 counter/ timer 1 counter/ timer 2 counter/ timer 3 ctu0 ctu1 ctu2 ctu3 timer outputs pa0 pa3 timer outputs pb0 pb3 port a port b timer0 out timer1 out timer2 out timer3 out timer [ 3:0 ] in mc2int [ 6:7 ] tc0tc3 tc0tc3 mc2tmr [ 3:0 ] pt2int [ 4:5 ] control bus intrf clkin zpld input bus and array timer macro- cell intr macro- cell interrupt controller address/data /control bus counter/timer unit mux ppld wdog2pld intr2pld timer clock clock in pe4pe7 psd5xx counter/timer (cont.)
psd5xx family 66 counter name counting register image register counter 0 cntr0 img0 counter 1 cntr1 img1 counter 2 cntr2 img2 counter 3 cntr3 img3 9.6.1 counter /timer operation there are four identical 16 bit counter/timers cntr0,cntr1,cntr2 and cntr3 and associated counter/timer image registers img0,img1,img2 and img3. refer to table 21 for counter name and register correspondence. all counter/timers share a common clock source. each counter/timer can be operated in either waveform / pulse mode or event counter/time capture mode. counter 2 can be set up as a watchdog timer in both modes. note that in event counter/time capture mode counter 2 can only be set up as a watch dog counter/timer, whereas in the waveform/pulse mode counter 2 can be configured as a pulse or waveform generator or as a watchdog timer. refer to table 24 for possible combinations of counter/timer modes and refer to figure 33 for additional details. each counter/timer can be controlled by an input pin or through a dedicated ppld macrocell output or by software. counter/timer outputs are available through port a or port b pins in alternate function mode (refer to the chapter on i/o ports). polarity of these inputs/outputs is software programmable. the following sections describe various command and data registers that need to be initialized for proper function of these counter/timers. 9.6.1.1 counter /timer operating modes the psd5xx counter/timer has five basic modes of operation: the waveform and pulse or event counter, time capture, and watchdog. the waveform and pulse modes cannot be used in conjunction with event and time capture modes. both waveform/pulse or event count/time capture modes can set counter 2 into the fifth mode of operation, the awatchdogo mode. the basic functional element used in all these modes is the counter/timer unit (ctu) illustrated in figure 33. this block consists of a 16 bit increment/decrement counter, and a 16 bit image register with various control signals. the key function of the image register is to enable microcontroller access of the counter without asynchronously interrupting the counter. software can configure each counter/timer using the associated command register. the counter/timer of the psd5xx employs four ctus to realize the various modes of operation. table 21. registers used by counters psd5xx counter/timer operation (cont.)
psd5xx family 67 figure 33. inside of each ctux ( x = 0, 1, 2, 3 ) micro- controller data address software commands image reg cmd reg counter ctux timer clock ppld macrocell or pin or software command input terminal count (tc) to interrupt controller terminal count (tc) to port e counter output at pins pax or pbx * x=0to7 * not applicable in event count or time capture modes. psd5xx counter/timer operation (cont.)
psd5xx family 68 9.6.1.2 waveform mode in waveform mode, the counter/timer is capable of producing various pulse-width modulated (pwm) signals. the waveform mode in the psd5xx is realized using two ctus (counter/timer units) in the following combinations: ctu0 & ctu1 or ctu2 & ctu3. the outputs of ctu0 and ctu2 are available at port a and port b. refer to tables 25 and 26 for further details and configuration of these ports. ctu1 and ctu3 are internally connected to ctu0 and ctu2. the waveform mode is illustrated in figure 34 which shows a typical pwm waveform and the time slots in which two ctus are active. the waveform period is the sum of the counts for ctu0 and ctu1 (see equation 1), while the duty cycle is given by equation 2. the duty cycle of a waveform can be changed by loading a new value into the corresponding image register, and as soon as a terminal count is generated this new value gets loaded into the ctu. note that the end of a ctu time slot is indicated with terminal count signal of the active ctu. the terminal count signals are used to signal the transfer of active status between ctus. the terminal count is true whenever the counter underflows while decrementing or when the counter overflows while incrementing. period of the waveform generated = count high + count low..(1) duty cycle of the waveform generated = count high count high + count low......(2) the timing of various pulses that create a waveform signal in the above example is defined by the microcontroller via image register updates of the ctu0 and ctu1. the contents of an image register are loaded or copied to the associated counter under any of the following conditions: o terminal count of ctu1 and/or ctu3 pulses to transfer active status to ctu0 and/or ctu2. o an input pin (port e) pulses (if enabled by software). o a ppld macrocell output pulses (if enabled by software). o a command register bit is written to by the microcontroller, i.e., a software load/store (load). a waveform output is first initialized and then later modified by setting its two corresponding software load/store bits after loading of the image registers. if the counter/timer register is directly loaded by the mcu, it gets overwritten by the associated image register contents as soon as the counter/timer is active. the configuration of the ctu in the waveform mode is schematically illustrated in figure 35. the output polarity during the ctu0 time slot is controlled by bit 3 in the counter/timer command register. the output polarity during the ctu1 time slot is defined as the complement of the ctu0 polarity. similarly, the polarity of the input pin is controlled by bit 4 in the counter/timer command register. this description of the waveform mode of operation applies to ctu2 and ctu3 also. in order to change the image register values, use the freeze/freeze acknowledge protocol as described in the freeze command register section. counter/timer operation (cont.)
psd5xx family 69 figure 34. sample waveform (pw m) and ctu time slots (using counters/timers 0 and 1) output waveform * terminal count0 terminal count1 ctu0active * outputwaveformis availableat pin pa0 or pb0 dependingon the psdsoftfitterpin assignment. ctu1active ctu1 active ctu0active ctu0 active counter/timer operation (cont.)
psd5xx family 70 figure 35. ctu control signals for waveform mode counter start counter (bit 1 of global command register) counter output (port a or b) (only counter 0 or 2) output polarity select (bit 3 of cmd register) software freeze (freeze command register) timer_clock * need two ctus together in waveform mode (ctu0 ctu1 or ctu2 ctu3). the terminal count of ctu0 drives ctu1 and the terminal count of ctu1 drives ctu0. the same applies to ctu2 and ctu3. software select (bit 2 of cmd register) software enable (bit 7 of cmd register) terminal count of other ctu * pin or macrocell (selected by bit 5 of cmd register) software gate bit (bit 6 of cmd register) increment/decrement select (bit 1 of cmd register) software load (software load / store register) terminal count (tc) to interrupt controller freeze acknowledge (status flags register) terminal count (tc) * to other ctu load / store enable/disable terminal count (tc) to port e counter/timer operation (cont.)
psd5xx family 71 9.6.1.3 pulse mode in pulse mode, the counter/timer is capable of generating a one shot pulse. the pulse width of the generated pulse is defined by the value loaded into the associated image register of the timer. if the counter/timer register is directly loaded by the mcu, it gets overwritten by the associated image register contents as soon as the counter/timer is active. each ctu is capable of pulse mode. as soon as the timer is active, i.e. decrementing or incrementing, a pulse is output until the timer underflows or overflows. the pulse waveform is illustrated in figure 36. the active level of this pulse is defined again by a command register bit. as can be seen in figure 37, the pulse is triggered by any of the following events: o transition on the input pin (port e) (if enabled by software). o ppld macrocell output pulses (if enabled by software). o command register bit is written to by a microcontroller (software load). as in the waveform mode, the polarity of the input pin is defined by a command register bit and the freeze/freeze acknowledge must be used whenever the image register is modified. the outputs of ctu0, ctu1, ctu2 and ctu3 are available at port a and port b. refer to tables 25 and 26 for further details and configuration of these ports. 9.6.1.4 event counter mode in this mode, the counter/timer uses the ctu to count a number of events. an event is defined as a signal-transition on the counter's input pin as defined by the input polarity configuration bit in the command registers or a low to high transition on the ppld macrocell output. in this mode, the image register of the ctu is used to store the contents of the counter at the rising edge of the load/store signal. this is opposed to the previous two modes in which the image register was used to load the counter. figure 38 shows the configuration of the ctu for the event-counter mode. notice that the enable signal is edge sensitive. its source is either: o pin driven. o ppld macrocell driven. all counter/timer registers must be assigned values during initialization in the event counter mode. during normal operation, the ctu increments or decrements its count when an event occurs. the image register is then immediately updated with the current count. the microcontroller can read the contents of the image register by first setting the command-register freeze bit in order to disable count updates of the image register during its read operation. the microcontroller waits for a freeze acknowledge and then accesses the image register in the usual fashion. the freeze signal effectively guarantees stable image register data during microcontroller read access, even though the ctu continues to count events. during the freeze acknowledge active state, the counter continues counting. note that for an event to be counted the events must be separated by at least one timer clock period plus two clkin clock periods. counter/timer operation (cont.)
psd5xx family 72 figure 36. sample pulse-mode waveform output waveform terminal count pulse trigger event ctu inactive ctu inactive ctu actived by a load/store pulse counter/timer operation (cont.)
psd5xx family 73 figure 37. ctu control signals for pulse mode counter start counter (bit 1 of global command register) counter output (port a or b) output polarity select (bit 3 of cmd register) software freeze ( freeze command register) timer_clock software select bit (bit 2 of cmd register) enable command (bit 7 of cmd register) pin or macrocell (selected by bit 5 of cmd register) software gating bit (bit 6 of cmd register) increment/decrement select (bit 1 of cmd register) software load (software load/ store register) terminal count (tc) to interrupt controller freeze acknowledge (status flags register) load/store enable/disable terminal count (tc) to port e counter/timer operation (cont.)
psd5xx family 74 figure 38. ctu control signals for event count mode counter start counter (bit 1 of global command register) timer_clock software select (bit 2 of cmd register) enable command (bit 7 of cmd register) pin or macrocell (bit 5 of cmd register) pin or macrocell (selected by bit 5 of cmd register) software gating bit (bit 6 of cmd register) software freeze (freeze command register) * software store (software load/ store register) terminal count (tc) to interrupt controller freeze acknowledge (status flags register) load/store enable/disable * count updates are continuously stored in the image register, unless frozen by the software freeze command. terminal count (tc) to port e counter/timer operation (cont.)
psd5xx family 75 9.6.1.5 t ime capture mode in the time capture mode, the counter/timer is capable of measuring the time (by counting clock pulses) between events. figure 39 shows the ctu configuration for time capture. all the counter/timer registers must be cleared during initialization of the time capture mode. here the counter is enabled to count via software only. the ctus continuously count. a load/store pulse triggers the storing of the counter's contents into the associated image register. the image register effectively contains a asnap shoto of the counter at the time of the pulse. the ctu store input is edge-triggered by events, the events being: o pin driven. o ppld macrocell driven. o software driven. a freeze signal is used to ensure that image data is stable during microcontroller reads which is similar to the description of event counter microcontroller read accesses. two ctus in time capture mode can be used to capture the rising and the falling edges of a pulse, the difference of the measurements being the pulse width. the counter continues to count regardless of the freeze acknowledge state. note that the time span between two consecutive edges of time capture must be greater than one timer clock cycle in order to be captured. 9.6.1.6 watchdog counter/timer counter/timer-2 can be operated as a watchdog timer in both waveform/pulse and event count/time capture modes. in event count/time capture mode, counter/timer-2 can be configured only as watchdog. figure 40 shows the control signals of the ctu when in watchdog mode. when the watchdog mode is active, ctu2 counts down and at the terminal count of counter-2 a watchdog condition occurs. to avoid the watchdog from occurring, a owriteo to the software load/store bit-2 in the osoftware load/store registero has to take place before the counter-2 underflows. this action reloads the counter-2 with the initial count value in the image register-2. note that this initial count value cannot be changed after the watchdog mode is enabled. the terminal count signal of a watchdog could result in a pulse width that is equal to the count value loaded into the image register of counter/timer-2. the active high watchdog pulse from counter 2 is routed through the ppld, enabling the user to inverse its polarity or implement any other logic before driving the watchdog output on a user defined i/o pin. this signal could be used to drive a reset pin or trigger a non-maskable interrupt on a processor. once counter/timer-2 is set to the watchdog mode, it cannot be reconfigured by software and it can get out of the watchdog mode only by a reset. when the watchdog is enabled in power down and sleep modes, it remains active regardless of the state of bit 7 (tmr clk) in power management mode register pmmr0. the watchdog mode is enabled by setting the watchdog bit in the global command register. setting up the command register for ctu2 is not required except when ctu3 is configured in pulse mode. in this case, bit 0 of the command register for ctu2 is set to a1o. counter/timer operation (cont.)
psd5xx family 76 counter/timer operation (cont.) figure 39. ctu control signals for time capture mode counter start counter (bit 1 of global command register) timer_clock software select (bit 2 of cmd register) pin or macrocell (selected by bit 5 of cmd register) software gate bit (bit 6 of cmd register) software freeze (freeze command register) software store (software load/store register) terminal count (tc) to interrupt controller freeze acknowledge (status flags register) store enable/disable terminal count (tc) to port e
psd5xx family 77 figure 40. ctu control signals for watchdog mode set watchdog bit (bit 3 of global command register) c o u n t e r 2 i m a g e 2 gpld software load (bit 2 of software load/store register) output pin wdog2pld counter output (active high) watchdog gpld output terminal count to interrupt controller terminal count to port e timer_clock en/dis load (self latching bit) counter/timer operation (cont.)
psd5xx family 78 counter/timer operation (cont.) 9.6.1.8 counter /timer clock input all counter/timers 0 through 3 have a common clock source. the counter/timers are clocked from the output of a highly flexible and high resolution divisor unit. the divisor's input is the external clock input pin. the divisor div is a number in the range of 4 < = div < = 280. refer to table 22 for exact values of div for different clock values. figure 42 details the psd5xx counter clock generation. the counter/timer clock input = (external clock input) (div) where div = n * k and n = (4 + dlcy). the value of k depends on the scale-bit (bit 0 in the global command register) in the aglobal command registero , k = 8 when scale-bit is set to 1 and k = 1 when scale-bit is set to 0. dlcy is the number of delay cycles in the range of 0 < = dlcy < = 31 set up in the delay cycle register. the fastest clock to service the counter/timer is = (clock input / 4). the maximum external clock input value is 28 mhz and the fastest internal count frequency is 7.0 mhz, i.e., a resolution of 143 ns. (higher resolution can be achieved by using in conjunction with gpld macrocells). the default value of div is 4 (following a reset both k and dlcy contain zeroes). 9.6.1.7 terminal counts ( tcs) the terminal counts (tc0 tc3) generated by the counter/timers are made available at port e as outputs or as feedbacks to the zpld. refer to table 27a for pin assignments. the terminal counts can be used to concatenate the 16-bit counter/timers into a larger counter. only the trailing edge of the tc signal can be used as input to another counter/timer. for example, concatenating ctu0 and ctu1 requires the following ppld equation in the psdabel file: mc2t mr1 = !tc0; in order for a tc signal to come out, its respective bit in the port e special function out register must be set to 1. tc signals on port e pins can be used as inputs to the zpld. a tc signal goes high for the duration of at least four clkin periods whenever its corresponding timer counting-register overflows or underflows. figure 41 gives the timing relationship between clkin and the tc signal. figure 41. timing relationship between clkin and the tc signal. 4 clkin periods clkin tc - signal 30ns 30ns notes: 1. overflow occurs when a counter value changes from ffffh to 0000h during incrementing. 2. underflow occurs when a counter value changes from 0000h to ffffh during decrementing.
psd5xx family 79 dlcy scale bit div 00 4 10 5 20 6 30 7 40 8 50 9 6010 7011 8012 9013 10 0 14 11 0 15 12 0 16 13 0 17 14 0 18 15 0 19 16 0 20 17 0 21 18 0 22 19 0 23 20 0 24 21 0 25 22 0 26 23 0 27 24 0 28 25 0 29 26 0 30 27 0 31 28 0 32 29 0 33 30 0 34 31 0 35 dlcy scale bit div 1140 2148 3156 4164 5172 6180 7188 8196 9 1 104 10 1 112 11 1 120 12 1 128 13 1 136 14 1 144 15 1 152 16 1 160 17 1 168 18 1 176 19 1 184 20 1 192 21 1 200 22 1 208 23 1 216 24 1 224 25 1 232 26 1 240 27 1 248 28 1 256 29 1 264 30 1 272 31 1 280 table 22. dlcy , scale bit and div to generate different clock divisions sample calculation of timer input clock external input clock to the psd5xx is 8 mhz. if required counter/timers 0 3 count frequency is 1 mhz then the counter/timer clock input = (external clock input) (div) 8 mhz 1 mhz = = > (div) = 8 (div) therefore from table 22 when (div) = 8, the scale-bit in the aglobal command registero is set to a 0 and the dlcy register to a value of 4. counter/timer operation (cont.) counter/timer clock input (cont.)
psd5xx family 80 counter/timer operation (cont.) figure 42. counter clock generation resulting divisor value 4 < = div < = 280 scale bit in global cmd register delay cycle register 0 < = dlcy < =31 timer clock to counters / timers 0 3 clkin pin
psd5xx family 81 address register name address register name offset offset +a9h status flags +a8h global command +a6h dlcy +a5h software load/store +a4h freeze command +a3h cmd3 +a2h cmd2 +a1h cmd1 +a0h cmd0 +9fh cntr3 +9eh cntr3 +9dh cntr2 +9ch cntr2 +9bh cntr1 +9ah cntr1 +99h cntr0 +98h cntr0 +97h img3 +96h img3 +95h img2 +94h img2 +93h img1 +92h img1 +91h img0 +90h img0 table 23. offset address map of counter /timer-unit registers counter/timer operation (cont.) 9.6.2 counter /timer registers registers cntr0,cntr1,cntr2 and cntr3 serve as actual counting logic. registers img0,img1,img2 and img3 serve as images of these counter/timers. depending upon the selected mode of operation, a counter can load a new value or transfer its content to the image register. registers img0 - img3 and cntr0 - cntr3 are accessible to the microcontroller only before setting the start bit (bit 1 in the global command register). when cntr0-cntr3 are active, the value in the read operation is not guaranteed to be stable and during a write operation there could be contention between the image register write and microcontroller write. therefore the access of registers cntr0-cntr3 should be suspended when the counter/timers are active. only img0, img1, img2 and img3 registers are accessible when the counter/timers are active. tables 23 and 23a give the address map for the various port and counter/timer-unit registers. this address offset map is of the host processor, relative to csiop (chip select input output port) i.e. address space allocated by the host microcontroller to access all the psd5xx embedded peripherals. table 23a is for 16-bit motorola microcontrollers which require different address offsets.
psd5xx family 82 address register name address register name offset offset +a8h status flags +a9h global command +a7h dlcy +a4h software load/store +a5h freeze command +a2h cmd3 +a3h cmd2 +a0h cmd1 +a1h cmd0 +9eh cntr3 +9fh cntr3 +9ch cntr2 +9dh cntr2 +9ah cntr1 +9bh cntr1 +98h cntr0 +99h cntr0 +96h img3 +97h img3 +94h img2 +95h img2 +92h img1 +93h img1 +90h img0 +91h img0 table 23a. offset address map of counter /timer-unit registers (for 16-bit motorola mcus in 16-bit mode. if 8-bit mode is selected, use table 23.) registers img0 through img3 are written to by the microcontroller to load the counter/timers with required values in waveform, pulse and watchdog mode only. to retrieve the count or time in event count or time capture modes, counter/timers store their values into img0 through img3. any access to the image registers must conform to the freeze/freeze acknowledge protocol, described later in the freeze command paragraph. counter/timer registers (cont.)
psd5xx family 83 9.6.2.1 global command register this is used to specify the operation mode of the counter/timer and to start or stop the counter/timer. therefore during the initialization of the counter/timer registers, the global command register should always be configured last. counter/timer registers (cont.) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 * *** watch global counter scale dog mode start note: * = not used. at reset all bits come up as 0's. watch dog bit: when this bit is 0: watch dog mode is not selected. 1: watch dog counter/timer (counter 2) is active. this bit can be turned off by reset only. note: whenever this bit is set to 1, the counter start bit should also be set to 1. otherwise the counter/timer will always be off, i.e., once this bit is set, access to counter 2 registers and the global command registers are blocked. global mode bit: when this bit is set to a 0: all timers/counters are set to waveform or pulse mode. 1: all timers/counters are set to operate in event counter or time capture mode. note: further selection of modes is done in individual cmd registers. counter start bit: when this bit is set to 0: all ctus are disabled and can be re-initialized. 1: all ctus are enabled. scale bit: when this bit is set to 0: the clock to all counter/timers is divided by 1. 1: the clock to all counter/timers is divided by 8.
psd5xx family 84 9.6.2.2 command registers for counter /timers cmd0, cmd1, cmd2, cmd3: each of the counter/timer units (ctu) has one command register associated with it. a description of these various ctu command bits is provided below. refer to csiop tables 23 and 24 for their addresses and selection details. figure 43 describes the command register bits. the following is the description of counter/timer0 cmd0 register bits. bits in cmd1, cmd2 and cmd3 have similar descriptions. refer to figure 43 also. counter/timer registers (cont.) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 enable/ software pin / input output select increment / mode disable gating ppld polarity polarity counter decrement select using bit for macrocell pin, load / ppld store cmd macrocell using pin or or ppld software macrocell notes: 1. at reset these bits come up as 0s. 2. in watchdog mode, cmd2 register bits are don't cares. mode select bit (0): this bit selects the counter/timer0 operation mode. after reset counter/timer0 initializes in waveform/event count mode. when this bit is set to 1: the counter/timer0 operates in pulse/time capture modes. 0: the counter/timer0 operates in waveform/event count modes. note: see table 24 for details of timer mode set up. increment/decrement bit (1): this bit is used to set the counter/timer in increment or decrement mode. the reset state is decrement mode. when this bit is set to 1: the counter/timer0 is in increment mode. 0: the counter/timer0 is in decrement mode. note: in watchdog mode counter #2 is in decrement mode only. select counter bit (2): this bit is used to select or deselect counter/timer0. at reset this bit initializes as 0 which means counter/timer0 is deselected. when this bit is set to 1: counter/timer0 is selected (counting enabled). 0: counter/timer0 is deselected (counting disabled). after a counter/timer is started by the global command register, it can be re-configured by changing the individual command register. the steps to re-configure a counter/timer are: 1. disable the counter/timer by writing a a0o to the select counter bit (bit 2) of the command register. 2. change the counter/timer configuration by writing the new value (bit 2 remains at a0o) to the command register. 3. enable the counter/timer again by writing the new value with bit 2 set to a1o to the command register.
psd5xx family 85 command registers for counter/timers cmd0, cmd1, cmd2, cmd3 ( cont.) output polarity bit (3): this bit is valid only in waveform or pulse mode and is used to select the polarity of the active output signal of the counter/timer0. at reset this bit initializes as 0 which means the active output state is low. when this bit is set to a 1: the active output state is high. 0: the active output state is low. input polarity bit (4): the state of this bit determines the polarity of the active input control signal to the counter/timer0 and is valid only for input pin. at reset this bit initializes as 0 which means that the input active is high. when this bit is set to a 1: the input active is low. 0: the input active is high. pin / ppld macrocell bit (5): this bit determines whether the counter/timer0 gets its input command for load/store and enable/disable from the psd5xx pin or from the ppld macrocell output. at reset this bit initializes as 0 which means that the input command is coming from the psd5xx ppld macrocell. when this bit is set to a 1: the counter/timer0 input command is coming from the pin. 0: the counter/timer0 input command is coming from the ppld macrocell output. software gating bit for this bit gates the load/store command activated by the load/store commands (6): psd5xx pin or ppld macrocell. at reset this bit initializes as 0 which means that the load/store command activated by the pin or macrocell is permitted through. when this bit is set to 1: load/store operation activated by pin or macrocell is not permitted through. 0: load/store operation activated by pin or macrocell is permitted through. to further decide between the pin and ppld macrocell, use bit 5 (pin/ppld macrocell). enable/disable using pin, this bit determines whether the enable/disable ppld macrocell or software command is activated by the psd5xx pin, ppld macrocell bit (7): or by software. at reset this bit initializes as 0, which means that the enable/disable command is activated by the pin or ppld macrocell. when this bit is set to 1: enable/disable command by pin or macrocell is overridden by software (only bit 2 of this register will enable or disable the counter). 0: enable/disable command is activated by pin or macrocell output. to further decide between the pin and ppld macrocell use bit 5 (pin / ppld macrocell bit). counter/timer registers (cont.)
psd5xx family 86 from counter ppld macrocell output mc2tmr [ 3:0 ] counter control input pin timer [ 3:0 ] in input polarity bit 4 of cmd0 register software select counter bit 2 of cmd0 register software load/store bit0 of software load/store register freeze command bit0 of freeze command register pin or macrocell select bit 5 of cmd0 register software gating bit for load/store commands from pin or macrocell bit 6 of cmd0 register enable/disable using pin, macrocell or software bit 7 of cmd0 register mux enable / disable signal to timer level sensitive load / store signal to timer rising edge sensitive figure 43. enable /disable and load/store generation counter/timer registers (cont.)
psd5xx family 87 9.6.2.3 configuring the mode of operation of the counter/t imers: using the global mode bit of the global command register and mode select bit of the command register of counter/timers 0 3, individual counter/timer modes of operation can be set up. refer to table 24. notice that all the counter/timers can either operate in waveform/pulse or event count/time capture modes, but not in all four modes at the same time. counter/timer registers (cont.) mode select bit global mode bit (command modes modes (global command registers of of of register) counter/timers counter/timers counter/timer2 0 3 cmd0, cmd1, 0, 1 and 3 cmd 2 and cmd3 ) 0 0 waveform waveform or watchdog 0 1 pulse pulse or watchdog 1 0 event counter watchdog only 1 1 time capture watchdog only 9.6.2.4 freeze command register when a microcontroller needs to access the contents of the image registers (img0-img3) it does so by first setting the command register freeze bit in order to disable the timer state-machine accesses of the image register. the microcontroller waits for the freeze acknowledge bit in the counter/timer status register to be set to 1 and then it accesses the image register as an address location. the freeze acknowledge signal effectively guar- antees stable image register data during microcontroller read/write cycles even though the counter/timer continues to count. the freeze acknowledge bit gets cleared after the negation of freeze. the freeze command bits are set and cleared by the microcontroller software. the freeze command register and the software load/store register should not be set at the same time. it is recommended that the registers be accessed individually. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 * *** freeze freeze freeze freeze ctu3 ctu2 ctu1 ctu0 note: * = not used. table 24. counter /timer modes
psd5xx family 88 9.6.2.5 software load/store register: each bit in this register enables a load to the corresponding counter/timer from its associated image register in waveform, pulse or watchdog modes. the actual counts are stored in their corresponding image register in event counter or time capture modes. bit 6 of the command register must be set to a1o before writing to the software load/store register. counter/timer registers (cont.) software load/store 0 bit: if this bit is set to 1: counter/timer0 cntr0 gets loaded from the image register img0 or cntr0 stores into img0 based on the mode of operation ** . software load/store 1 bit: if this bit is set to 1: counter/timer1 cntr1 gets loaded from the image register img1 or cntr1 stores into img1 based on the mode of operation ** . software load/store 2 bit: if this bit is set to 1: counter/timer2 cntr2 gets loaded from the image register img2. software load/store 3 bit: if this bit is set to 1: counter/timer3 cntr3 gets loaded from the image register img3 or cntr3 stores into img3 based on the mode of operation ** . ** load operation takes place in waveform, pulse and watchdog mode. store operation takes place in event count and time capture mode. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 **** software software software software load/store 3 load/store 2 load/store 1 load/store 0 note: * = not used. the software load/store bits are automatically cleared by the served counter. in addition to four ctu registers, there are delay cycle and counter/timer status registers. these are summarized on the following pages.
psd5xx family 89 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 **** frezack3 frezack2 frezack1 frezack0 notes: at reset all these bits intialize as 0's. * = not used. 9.6.2.6 status flags register there are eight read-only status flags. the lower four bits represent freeze acknowledge bits. counter/timer registers (cont.) frezack bits these freeze acknowledge bits are useful in the freeze/freeze acknowledge protocol. after the microcontroller senses that the frezack bit is being set it proceeds to access the image register for a read or write operation. frezack0 bit: when this bit is 1: image register access is granted. 0: image register access is not granted. frezack1 bit: when this bit is 1: image register access is granted. 0: image register access is not granted. frezack2 bit: when this bit is 1: image register access is granted. 0: image register access is not granted. frezack3 bit: when this bit is 1: image register access is granted. 0: image register access is not granted. dlcy register: bits < 4:0 > of the dlcy register are used to assign delay cycles to the counter/timer. various clock scaling values possible are 0 through 31 (decimal). at reset these bits initialize as 0. if necessary, the user has the option to set these bits up to generate delay cycles (dlcy) to scale down the counter/timer clock (see table 24). bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 *** dlcy4 dlcy3 dlcy2 dlcy1 dlcy0 note: * = not used.
psd5xx family 90 9.6.2.7 load /store the load operation transacts an image register (e.g. img0) write into its counter/timer register (e.g. cntr0), whereas in the store operation the counter/timer register (e.g. cntr0) writes back into the image register (e.g. img0). these signals are valid only when a counter/timer is active. they are rising edge sensitive and are used to load a counter with a required value or to store the counter value in the associated image register. in waveform, pulse and watchdog modes the microcontroller writes into an image register. the respective counter/timer uses that value as its initial counting value. the data transfer operation from an image register into its corresponding counter is called load. in event counting and time capture modes the counter/timer counts event pulses or timer clock cycles, respectively. an external event or a software command can cause a data transfer from the counting element into its image register. this operation is defined as store. these operations are triggered by: o software command o terminal count (in waveform mode only) o ppld macrocell output o input pin refer to counter/timer command register and figure 43 for specific details. 9.6.2.8 enable /disable these signals are used to enable or disable the counting of the counter/timers. these signals are controlled by: o software command (bits 2 and 7 of the command registers). o ppld macrocell output o input pin event count mode: in event count mode the enable/disable signal is edge sensitive and is connected to the event input signal through the ppld or pin. in time capture mode the enable/disable signal can be set by a software command only. refer to counter/timer command register and figure 43 for specific details. 9.6.2.9 counter /timer input/output each counter can use individual control inputs in port e as input load/store or enable/disable signals, and counter/timer outputs in port a or port b by selecting alternate and special functions on the pins assigned to them. the outputs are used in waveform and pulse modes in which the counters generate output waveforms or pulses. the inputs can be used in all modes of operation except watchdog to create the load/store and/or enable/disable control signals. port e can be configured as outputs for terminal count. terminal count is also available as zpld inputs (via pin feedback). refer to tables 25, 26 and 27 for further details and configuration of these ports. 9.6.2.10 ppld macrocell the enable/disable or load/store inputs of each counter/timer can be selected through a ppld macrocell, whose inputs are two product terms ptt0 and ptt1 from the ppld's and-array. the polarity of the ppld macrocell output is programmable. the output of the ppld macrocell which is the enable/disable and/or load/store input to the counter/timer can be in a combinatorial mode or register mode. figure 44 shows the details of the ppld macrocell. refer to the azpldo section for further information on the ppld. counter/timer (cont.)
psd5xx family 91 figure 44. ppld macrocell for each counter/timer and array timer [ 3:0 ] in clkin reset wdog2pld (internal feedback) polarity select counter/ timer bit 5 of command register zpld input bus pin or macrocell select input mux comb / reg select mux pr dq q c timer_clock (prescaled clk) mc2tmr * timer input pin ptt0 ptt1 * * these are four similar macrocells with outputs mc2tmr[3:0] .abl file counter /timer (cont.)
psd5xx family 92 counter/timer (cont.) 9.6.2.11 i/o port a, b, e ports a, b and e have the capabilities for counter/timer alternate and special functions, e.g. counter/timer out, load/store, enable/disable, etc. refer also to the chapter on i/o ports for further details. table 25. port pin special function out pa0 timer0_out pa1 timer1_out pa2 timer2_out pa3 timer3_out port pin special function out pb0 timer0_out pb1 timer1_out (in pulse mode only) pb2 timer2_out pb3 timer3_out (in pulse mode only) special function assignment port a: timer outputs in pulse or waveform modes can be tapped out of these pins: pa0 pa3. in order for the following timer outputs to drive their corresponding port pins, set the respective bits in the special function register of port a to ones. table 26. port b: timer outputs in pulse or waveform modes can be tapped out of these pins: pb0 pb3. in order for the following timer outputs to drive their corresponding port pins, set the respective bits in the special function register of port b to ones. the decision which of port a or b pins are used as timer outputs is done by the psdsoft fitter.
psd5xx family 93 port pin alternate function in pe3 timer0_in pe4 timer1_in pe5 timer2_in pe6 timer3_in i/o port a, b, e (cont.) port e: timer[3:0] _ inputs can have different control functions such as timer load/store and/or enable/disable, based on how these pins are configured in the timer command registers. table 27. counter/timer (cont.) port pin special function out pe4 tc0 pe5 tc1 pe6 tc2 pe7 tc3 table 27a. the terminal counts (tc0 tc3) generated by each counter/timer are available at port e (pins pe4 pe7) as shown in table 27a. to connect tc0 tc3 to port e pins, set the corresponding bits in the special function register to a1o.
psd5xx family 94 counter/timer (cont.) 9.6.2.12 sample counter/ timer0 initialization in pulse mode following is a sample initialization routine for counter/timer0 to operate in pulse mode. the assembly language commands do not correspond to any particular microcontroller. configure csiop for microcontroller access to counter/timer registers and i/o ports for initialization of counter/timers. for the values of each register, refer to tables 30 and 31. use psdsoft supplied by wsi to configure the portion related to counter/timers. also refer to the section on the psd5xx i/o ports. clear all counter/timers load cntr0, 0000h ; clear counter/timer 0 load cntr1, 0000h ; clear counter/timer 1 load cntr2, 0000h ; clear counter/timer 2 load cntr3, 0000h ; clear counter/timer 3 scaling of clock (common to all counter /timers) load dlcy, 02h ;delay cycles(dlcy) = 2, k value is selected in ;global register by setting scale-bit counter/timer 0 initialization ( command register0 cmd0 ) load cmd0, 6fh ;pulse mode (d0 = 1) ;increment (d1 = 1) ;select counter/timer (d2 = 1) ;output pulse active high (d3 = 1) ;load signal on input pin high going transition (d4 = 0) ;input control from pin (not ppld macrocell) (d5 = 1) ;load&store control activated by pin (d6 = 0) ;enable count (d7 = 1) load img0,fff7h ;load counter/timer0 image register with count (pulse width) ;needed (pulse duration of 8 timer clock cycles) load special reg a,1 ;configure pa0 as a timer = 0 output by writing a a1o to port a ;special function register global register configuration load global, 03h ;non watchdog mode ;pulse mode ;all ctus enabled ;scale-bit = 1 ;input clock is divided by 6 now if pin pe3 on port e is input with a high going signal: o this signal causes counter/timer0 to get a value (fff7h) loaded from its associated image register (img0) and causes the counter/timer0 to start counting from fff7h (increment) until it overflows and issues a terminal count0 (tc0). o during counting port a pin (pa0) outputs a high going one-shot pulse with a width equal to (max count possible initial count value loaded, i.e. 8 timer clock cycles in this example). o if the interrupt controller is configured to receive tc0, it will cause the interrupt int0 to occur.
psd5xx family 95 general description the psd5xx includes logic for sensing, masking, priority decoding and identifying up to eight internal interrupts. the psd5xx interrupt controller can generate interrupts from two dedicated ppld product terms, two ppld macrocell outputs and four terminal-count outputs of the counter/timer unit. the four interrupts generated by the ppld can be user defined using the wsi psdsoft windows compatible pc based software. figure 45 details the basic building blocks of the psd5xx interrupt controller and figure 46 shows its interface with other sections of the psd5xx. features the psd5xx interrupt controller has the following features: o can accept eight interrupt inputs o ppld product terms, ppld macrocell outputs and terminal counts (tcs) of counter/timers can cause interrupts. o interrupts generated from the ppld canbe user defined. o all interrupt inputs are priority decoded, ir7 has highest priority and ir0 the lowest priority. o each interrupt can be configured as either edge or level sensitive using the edge/level register. o each interrupt can be individually masked using a mask register. o at reset all interrupts are masked. o interrupt request latch provides the status of all interrupts. o reading an interrupt vector location clears the corresponding pending interrupt. o any of these interrupts trigger a global interrupt output available as an output at port e (pe2) and/or as an input to the ppld. 9.7.1 interrupt operation on reset all registers and latches are cleared and all interrupts are masked. during initialization of the interrupt controller, relevant interrupts are un-masked and defined whether edge or level sensitive. when one or more interrupts are raised high, the ainterrupt request latcho latches in all the non-masked interrupts. a 3-bit priority encoder assigns the priority to the non-masked pending interrupts. the mcu (microcontroller) can clear the edge-sensitive pending interrupts by reading the ainterrupt read clear registero. level-sensitive interrupts continue to be pending even after the mcu reads the ainterrupt read clear registero. the mcu would typically service each interrupt in sequence according to priority. refer to table 28 regarding priorities of various interrupts. any of these interrupts trigger a global interrupt output available as an input to the ppld (intr2pld) and as output at port e (pe2). refer to figures 45 and 46 for details of the interrupt architecture. interrupt priority ir 7 highest ir 6 ^ ir 5 ^ ir 4 ^ ir 3 ^ ir 2 ^ ir 1 ^ ir 0 lowest table 28. interrupt priority table 9.7 interrupt controller
psd5xx family 96 figure 45. interrupt controller block diagram macro- cell product terms from timer terminal counts tc3 thru tc0 int 7 int 6 int 5 int4 int 3 int 2 int 1 int 0 edge/level sensitivity select register data bus mask register global interrupt output to pe2 and pld global clear read vector read request decoder decoder priority encoder interrupt controller (cont.)
psd5xx family 97 figure 46. interrupt controller interface with other internal blocks port e pin/ macrocell command input prescaled clock in timer [ 3:0 ] in mc2int [ 6:7 ] pt2int [ 4:5 ] intr2pld mc2tmr [ 3:0 ] control bus intrf clkin zpld input bus and array timer macro- cell intr macro- cell address / data / control bus timer/counter unit mux programmable clock prescalar ppld interrupt controller int0 int3 int4 int5 int6 int7 int sense register mask register read rqst register read clear register priority status reg tc0tc3 * timer [ 3:0 ] out introut timer outputs pa0 pa3 timer outputs pb0 pb3 port a port b * tc: terminal count of timer interrupt controller (cont.)
psd5xx family 98 interrupt operation (cont.) 9.7.1.1 command registers all the eight interrupts can be individually masked using a mask register. writing aoneso into these mask bits enables the associated interrupts. reset masks all interrupts. interrupts can also be defined as either level sensitive or edge sensitive using a sensitivity bit in the interrupt edge/level sensitivity select register. tables 29 and 29a give the address map for various port and interrupt command/status registers. this address offset map is of the host processor, relative to the csiop (chip select input output port) i.e., address space allocated by the host microcontroller to access all the psd embedded peripherals. address register name address register name offset offset +d4h interrupt read clear +d3h interrupt mask +d2h interrupt edge/level select +d1h interrupt request latch +d0h interrupt priority status table 29. offset address map of interrupt registers address register name address register name offset offset +d5h interrupt read clear +d2h interrupt mask +d3h interrupt edge/level select +d0h interrupt request latch +d1h interrupt priority status table 29a. offset address map of interrupt registers (for 16-bit motorola mcus in 16-bit mode. if 8-bit mode is selected, use table 29.) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 mask7 mask6 mask5 mask4 mask3 mask2 mask1 mask0 interrupt mask register bits mask 0 ... mask 7 correspond to interrupt 0 ... interrupt 7. when these bits are set to 1 = unmasked 0 = masked at reset these bits initialize as 0 and all interrupts are masked. the interrupt registers listed in tables 29 and 29a are described below. interrupt controller (cont.)
psd5xx family 99 bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 sense7 sense6 sense5 sense4 sense3 sense2 sense1 sense0 interrupt operation (cont.) interrupt edge/level select register bits sense 0 ... sense 7 correspond to interrupt 0 ... interrupt 7. when these bits are set to 1 = level sensitive 0 = edge sensitive (positive edge) at reset these bits initialize as 0 i.e., all interrupts come up as edge sensitive. interrupt read clear register this is a read only register. reading this register during initialization clears all the pending edge sensitive interrupts. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 ir 7 ir 6 ir 5 ir 4 ir 3 ir 2 ir 1 ir 0 interrupt request latch register bits ir 0...ir 7 correspond to interrupt 0 ... interrupt 7. when any of these bits are set by the interrupt controller to a a1o, the corresponding interrupt is pending service. the mcu can read the interrupt request latch which shows the status of all interrupts. the entire interrupt request latch can be cleared by reading the interrupt read clear register, but level sensitive interrupts cannot be cleared. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 ***** vect 2 vect 1 vect 0 note: * = reserved for future use, bits set to zero. interrupt priority status register the value of these 3 bits (vect2, vect1 and vect0) indicates the highest priority of the interrupt to be serviced among multiple interrupts pending. refer to the table above for priorities of various interrupts. reading this register clears the highest pending interrupt. interrupt controller (cont.)
psd5xx family 100 interrupt controller (cont.) interrupt operation (cont.) 9.7.2 input/output interrupt inputs int4 and int5 originate from two dedicated ppld product terms pt2int4 and pt2int5. interrupt inputs int6 and int7 originate from the outputs of the ppld macrocells mc2int6 and mc2int7 as described in the next section and the remaining interrupt inputs int0 through int3 originate from four terminal-count (tc) outputs of the counter/timers. if an external event has to cause an interrupt in the psd5xx, it has to be routed through the ppld. regarding output from the interrupt controller, whenever an unmasked interrupt occurs, a global interrupt signal is generated. the global interrupt signal can be used as a zpld input (intr2pld). refer to figure 45 for details. it can also be driven off the chip by using the special-function out capability of port e (pe2) as intr_out. in either case, the global interrupt indicates to the mcu that an internal psd5xx interrupt has occurred. refer to the section on i/o ports for specific details of setting up the port functions. 9.7.3 ppld macrocell interrupt inputs int6 and int7 originate two dedicated ppld macrocells. each of these ppld macrocells have two product terms as inputs that are inputted into a ppld macrocell as shown in figure 47. the outputs of both ppld macrocells mc2int6 and mc2int7 are either combinatorial or register mode. the polarity of the product terms is programmable. refer to the section on azpldo for further reference on the ppld. 9.7.4 interrupt flowchart the flowchart in figure 48 explains the overall initialization and the servicing of the interrupts.
psd5xx family 101 figure 47. ppld interrupt macrocell and array pt pt pt pt pt pt clkin reset intr2pld (internal feedback) similar interrupt macrocell interrupt macrocell polarity select comb / reg select comb / reg select interrupt module pt2int4 pt2int5 zpld input bus mux dq c mc2int7 pt = product terms mc2int6 int7 int6 pe2 tc0 tc1 tc2 tc3 int4 int5 int2 int3 int0 int1 interrupt controller (cont.)
psd5xx family 102 figure 48. interrupt flowchart configure interrupt source pld and / or timer count i.e. unmask reqd intrpt interrupt occurred ? determine priority of the interrupt keep low priority interrupts pending service high priority interrupt are all interrupts serviced ? continue executing main loop until interrupt occurs interrupt initialization clear all pending bits (read clear register define edge or level sensitive no yes no yes interrupt controller (cont.)
psd5xx family 103 the page register is 4 bits wide and consists of four d flip flops.the outputs of the register (pgr0 pgr3) are connected to the input bus of the zpld. by including the four outputs as inputs to the dpld, the addressing capability of the microcontroller is increased by a factor of 16. figure 49 shows the page register block diagram. inputs to the four flip flops are connected to data bus d0-d3. the output of the register can be read by the microcontroller. the register can operate as an independent register to the microcontroller if page mode is not implemented. figure 49. page register dpld rs0 gpld ppld zpld es0 3 pgr0 pgr1 pgr2 pgr3 r/w d0 d0 d3 d1 d2 d3 q0 q1 q2 q3 page register reset the psd5xx has a programmable security bit which offers protection from unauthorized duplication. when the security bit is set, the contents of the eprom, the psd5xx non-volatile configuration bits and zpld data are prevented from being read by eprom programmers. the security bit is set through the psdsoft software and is embedded in the compiled output file. the security bit is uv erasable and a secured part can be erased and then re-programmed. 10.0 page register 11.0 security protection
psd5xx family 104 12.0 system configuration the csiop signal, which is generated by the dpld, selects the internal i/o devices or registers. the csiop signal takes up 256 bytes of address space and is defined by the user in the psdsoft software. the following is an address offset map for the various devices relative to the csiop base address. some motorola 16-bit microcontrollers have a different data bus/data byte orientation. this requires a different address offset for the internal psd5xx i/o devices or registers. tables 30a and 31a in this section are for this group of microcontrollers which include the m68hc16, m68302 and m683xx. the following table is the address map offset of the i/o port registers. address offset register name port a port b port c port d port e data in 00 01 10 11 20 control 02 03 12 13 22 data out 04 05 14 15 24 direction 06 07 16 17 26 open drain 18 19 special function 08 09 28 pld i/o 0a 0b 2a macrocell out 0c 0d 2c table 30. i/o register address offset address offset register name port a port b port c port d port e data in 01 00 11 10 21 control 03 02 13 12 23 data out 05 04 15 14 25 direction 07 06 17 16 27 open drain 19 18 special function 09 08 29 pld i/o 0b 0a 2b macrocell out 0d 0c 2d table 30a. i/o register address offset (for 16-bit motorola mcus in 16-bit mode. if 8-bit mode is selected, use table 30.)
psd5xx family 105 system configuration (cont.) register name address register name address offset offset page register e0 intr. read clear d4 intr. mask d3 intr. edge/level d2 intr. request d1 intr. priority d0 latch status vm c0 pmmr1 b1 pmmr0 b0 status flags a9 global command a8 dlcy a6 software load/store a5 freeze command a4 cmd3 a3 cmd2 a2 cmd1 a1 cmd0 a0 cntr3 9f cntr3 9e cntr2 9d cntr2 9c cntr1 9b cntr1 9a cntr0 99 cntr0 98 img3 97 img3 96 img2 95 img2 94 img1 93 img1 92 img0 91 img0 90 table 31. other register address offset
psd5xx family 106 system configuration (cont.) register name address register name address offset offset page register e1 intr. read clear d5 intr. mask d2 intr. edge/level d3 intr. request d0 intr. priority d1 latch status vm c1 pmmr1 b0 pmmr0 b1 status flags a8 global command a9 dlcy a7 software load/store a4 freeze command a5 cmd3 a2 cmd2 a3 cmd1 a0 cmd0 a1 cntr3 9e cntr3 9f cntr2 9c cntr2 9d cntr1 9a cntr1 9b cntr0 98 cntr0 99 img3 96 img3 97 img2 94 img2 95 img1 92 img1 93 img0 90 img0 91 table 31a. other register address offset (for 16-bit motorola mcus in 16-bit mode. if 8-bit mode is selected, use table 31.) register name register function data in this register is used to read the input on the port pins. control a a 0 o sets the corresponding port pin in address out mode. a a 1 o sets the pin in mcu i/o mode. data out holds the output data in the mcu i/o mode. direction this register is used to control the data flow in the i/o ports. a a 0 o sets the corresponding pin as an input pin. a a 1 o sets the pin as an output pin. open drain a a 0 o sets the corresponding pin driver as a cmos driver. a a 1 o sets the pin driver as an open drain driver. special function a a 1 o sets the corresponding port pin as timer or interrupt output. pld i/o a read only status register; a a 1 o indicates the corresponding pin is configured as a pld pin. macrocell out this register holds the outputs of the gpld macrocells. table 32. i/o register function
psd5xx family 107 system configuration (cont.) register name register function page register a 4-bit register that supports paging. intr. read reading this register clears all the pending edge sensitive clear interrupts. intr. define interrupt input as level or edge sensitive. edge/level intr. mask mask selected interrupt input. intr. a a 1 o in the register indicates the corresponding interrupt is request latch pending. intr. the register indicates which pending interrupt has the highest priority status priority. 1. configures the psd sram to be accessed by a psen o as vm program space (8031 design). 2. enable the peripheral i/o mode of port a. pmmr0 power management registers; enable the psd power down mode pmmr1 and other power saving configurations. status flags counter/timer freeze acknowledge bits. global specifies the counter/timer operation mode; and to start or stop command the counter/timers. dlcy specifies the delay cycles to the counter/timers. software this register enables a load (to the counter/timer) or store load/store (in the image register) operation. freeze this register disables the timer state-machine before access to the command image register is allowed. cmd3 0 command registers for the configuration of the counter/timers. cntr3 0 the four 16-bit counter/timers. img3 0 the image registers for cntr3 0. table 33. other register function
psd5xx family 108 12.1 reset input the reset input to the psd5xx (reset) is an active low signal which resets some of the internal devices and configuration registers. the timing diagram in the ac/dc characterization section shows the reset signal timing requirement. the active low range has a minimum t1 duration. after the rising edge of reset, the psd5xx remains in reset during t2 range. (see figure 59). the psd5xx must be reset at power up before it can be used. 12.2 zpld and memor y during reset while the reset input is active, the zpld generates outputs as defined in the psdabel equations. the eprom and sram blocks respond to the microcontroller bus cycle during reset, but the data is not guaranteed. 12.3 register values during and after reset table 34 summarizes the status of the volatile register values during and after reset. the default values of the volatile registers are a0o after reset. 12.4 zpld macrocell initialization the d flip flops in the macrocells in the gpld can be cleared by: o a product term (.re) defined by the user, in psdabel or o the macro-rst (reset) input, enabled and defined in psdabel. the timer and interrupt controller macrocells in the ppld are always cleared by the reset input. register name device reset state control port a, b, c, d, e set to a0o (address out mode) data out (data or address) port a, b, c, d, e set to a0o direction port a, b, c, d, e set to a0o input mode open drain port c, d set to a0o cmos outputs page register page logic set to a0o pmmr0, pmmr1 power management unit set to a0o vm volatile memory set to a0o dlcy timer set to a0o cmd0 cmd3 timer set to a0o, clear status flags timer set to a0o, clear global command timer set to a0o, clear img0 img3, cntr0 cntr3 timer undefined interrupt interrupt controller set to a0o, disabled system configuration (cont.) table 34. registers reset v alues port configuration reset standby mode port i/o input unchanged zpld output active depend on inputs to the zpld address out tri-stated not defined data port tri-stated tri-stated special function out tri-stated depending on status of clock input to the counter/timer peripheral i/o tri-stated tri-state table 35. i/o pin status during reset and standby mode
psd5xx family 109 symbol parameter condition min max unit t stg storage temperature cldcc 65 + 150 c pldcc 65 + 125 c commercial 0 + 70 c operating temperature industrial 40 + 85 c military 55 + 125 c voltage on any pin with respect to gnd 0.6 + 7 v v pp programming supply voltage with respect to gnd 0.6 + 14 v v cc supply voltage with respect to gnd 0.6 + 7 v esd protection > 2000 v 13.1 absolute maximum ratings note: stresses above those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied. exposure to absolute maximum rating conditions for extended periods of time may affect device reliability. type temperature v cc v cc tolerance speed grades available -70 -90 -15 -20 -25 commercial 0 c to +70 c +5v 10% x x +3v 10% x x industrial 40 c to +85 c +5v 10% x +3v 10% x 13.2 operating range symbol parameter condition min typ max unit v cc supply voltage all speeds 4.5 5.0 5.5 v v cc supply voltage zpsd5xxv versions 2.7 3.0 5.5 v only, all speeds 13.3 recommended operating conditions 13.0 specifications
psd5xx family 110 0 20 60 80 100 120 40 01015 52025 pt100% pt25% composite frequency at pld inputs (mhz) i cc (ma) turbo on turbo on turbo off turbo off figure 50. zpld t ypical i cc / frequency consumption (5 v) specifications (cont.) 13.4 ac/dc parameters the following tables describe the ac/dc parameters of the psd5xx family: o dc electrical specification o ac timing specification ? zpld timing combinatorial delays synchronous clock mode asynchronous clock mode ? microcontroller timing read timing write timing peripheral mode timing power down and reset timing ? psd5xx specific timings counter/timer timing interrupt controller timing following are some issues concerning the parameters presented: o in the dc specification, the supply current is given for different modes of operation. before calculating the total power consumption, determine the percentage of time that the psd5xx is in each mode. also the current is considerably different if the zpld_turbo bit is ooffo and eprom_cmiser is oono. o the ac power component provides the zpld, eprom, sram and timer ma/mhz specification. figure 50 shows the zpld ma/mhz as a function of the number of product terms (pt) used. o in the zpld timing parameters add the required delay when zpld_turbo is ooffo. o in the mcu timing specification, add the required time delay when eprom_cmiser is oono.
psd5xx family 111 conditions composite pld input frequency (freq pld) = 8 mhz mcu ale frequency (freq ale) = 4 mhz % eprom access = 80% % sram access = 15% % i/o access = 5% (no additional power above base) operational modes % normal = 10% % sleep = 90% number of product terms used (from fitter report) = 45 pt % of total product terms = 29/118 = 24.6% turbo = off cmiser = on 8-bit bus mode calculation (typical numbers used) i cc total = isleep x %sleep + %normal x ( i cc (ac) + i cc (dc) ) = isleep x %sleep + % normal x ( %eprom x 0.8 ma/mhz x freq ale + %sram x 1.4 ma/mhz x freq ale + %pld x (from graph using freq pld) ) =10 m a x 0.90 + 0.1 x (0.8 x 0.8 ma/mhz x 4 mhz + 0.15 x 1.4 ma/mhz x 4 mhz + 0.95 x 23 = 0.9 m a + 0.1 x (2.56 + 0.84 + 21.85) = 0.9 m a + 0.1 x 25.3 = 0.9 m a + 2.53 ma = 2.53 ma standby current consumption is handled similarly to sleep mode shown above. calculation based on i out = 0 ma. 13.5 example of psd5xx t ypical power calculation at v cc = 5.0 v specifications (cont.) 0 10 20 30 40 50 01015 52025 pt100% pt25% composite frequency at pld inputs (mhz) i cc (ma) turbo on turbo on turbo off turbo off figure 51. zpld t ypical i cc / frequency consumption (zpsd5xxv devices) (3 v)
psd5xx family 112 symbol parameter conditions min typ max unit v cc supply voltage all speeds 4.5 5 5.5 v v ih high level input voltage 4.5 v < v cc < 5.5 v 2 v cc + 0.5 v v il low level input voltage 4.5 v < v cc < 5.5 v 0.5 0.8 v v ih1 reset high level input voltage (note 1) 0.8 v cc v cc + 0.5 v v il1 reset low level input voltage (note 1) 0.5 0.2 v cc 0.1 v v hys reset pin hysteresis 0.3 v v ol output low voltage i ol =20 m a, v cc = 4.5 v 0.01 0.1 v i ol = 8 ma, v cc = 4.5 v 0.15 0.45 v v oh output high voltage i oh =20 m a, v cc = 4.5 v 4.4 4.49 v i oh = 2 ma, v cc = 4.5 v 2.4 3.9 v v sby sram standby voltage 2.7 v cc v i sby sram standby current v cc = 0 v 0.5 1 m a i idle idle current (v stdby pin) v cc >v sby 0.1 0.1 m a v df sram data retention voltage only on v stby 2v i sb1 standby supply power down mode csi >v cc 0.3 v (note 2) 50 100 m a (psd5xx) current sleep mode csi >v cc 0.3 v (note 3) 20 40 m a i sb2 standby supply power down mode csi >v cc 0.3 v (note 2) 25 50 m a (zpsd5xx) current sleep mode csi >v cc 0.3 v (note 3) 10 20 m a i li input leakage current v ss psd5xx family 113 -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit i/o input or feedback to t pd combinatorial output port b, e 25 30 34 add 10 ns t rpd registered input to (note 1) 27 32 36 add 10 ns combinatorial output t ea input to output enable any input 25 28 32 add 10 ns t er input to output disable any input 25 28 32 add 10 ns t arp register clear or preset any input 27 30 34 add 10 ns delay t arpw register clear or preset any input 20 25 29 ns pulse width t ard array delay 16 18 22 ns combinatorial delays (5 v 10% versions) note: 1. ports a, c, d and latched address from adio (a0, a1, a8-a15). * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product. 13.7 ac/dc parameters zpld t iming parameters (5 v 10% versions) -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit maximum frequency external feedback 1/(t s +t co ) 30.30 27.03 25.00 mhz maximum frequency f max internal feedback (f cnt ) 1/(t s +t co 10) 43.48 37.04 31.25 mhz maximum frequency pipelined data 1/(t ch +t cl ) 50.00 41.67 35.71 mhz t s input setup time any input 15 17 20 add 10 ns t h input hold time any input 0 0 0 0 ns t ch clock high time clock input 10 12 15 0 ns t cl clock low time clock input 10 12 15 0 ns t co clock to output delay clock input 18 20 22 0 ns t ard array delay for product term expansion any macrocell 16 18 22 0 ns t min minimum clock period t ch +t cl 20 24 29 0 ns synchronous clock mode (5 v 10%) * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product.
psd5xx family 114 -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit maximum frequency external feedback 1/(t sa +t coa ) 26.32 25.00 21.74 mhz maximum frequency f maxa internal feedback 1/(t sa +t co a 10) 35.71 33.33 27.78 mhz (f cnta ) (note 1) maximum frequency pipelined data 1/(t ch +t cl ) 41.67 41.67 35.71 mhz t sa input setup time any input 8 8 12 add 10 ns t ha input hold time any input 8 8 12 0 ns t cha clock high time any input 12 12 15 0 ns t cla clock low time any input 12 12 15 0 ns t coa clock to output any input 30 32 37 add 10 ns delay to port b t ard array delay for product term any macrocell 16 18 22 0 ns expansion t mina minimum clock period 1/f cnt 28 30 43 0 ns asynchronous clock mode (5 v 10% , note 1) ac/dc parameters zpld t iming parameters (5 v 10% versions) note: 1. only port b has asynchronous outputs. clock into macrocell flip flop is generated by a product term. * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product.
psd5xx family 115 explanation of ac symbols for non zpld timing. example: t avlx time from address valid to ale invalid. a address l logic level low or ale t r/w c power down n reset t time d input data p port signal v valid e e q output data x no longer a valid logic level h logic level high r wr, uds, lds, ds, iord, psen z float i interrupt s chip select -70 -90* -15 eprom_cmiser symbol parameter conditions min max min max min max on unit t lvlx ale or as pulse width 18 20 28 0 ns t avlx address setup time (note 4) 5 6 10 0 ns t lxax address hold time (note 4) 7 8 11 0 ns t avqv address valid to data valid (note 4) 70 90 150 add 10 ns t slqv cs valid to data valid 80 100 150 add 10 ns rd to data valid 8/16-bit bus (note 1) 20 32 40 0 ns t rlqv rd to data valid 8-bit bus, 8031 separate (note 2) 32 38 45 0 ns mode rd to data valid from (note 3) 32 38 45 0 ns interrupt controller t rhqx rd data hold time (note 1) 0 0 0 0 ns t rlrh rd pulse width (note 1) 30 32 38 0 ns t rhqz rd to data high-z (note 1) 22 25 33 0 ns t ehel e pulse width 30 32 38 0 ns t theh r/w setup time to enable 81018 0 ns t eltl r/w hold time after enable 000 0ns in 16-bit data bus 20 30 38 0 ns t avpv address input valid to mode (note 5) address output delay in 8-bit data bus 22 32 48 0 ns mode (note 5) read timing (5 v 10% versions) notes: 1. rd timing has the same timing as psen, ds, lds, uds signals. 2. rd and psen have the same timing for 8031 mode. 3. read to data valid of the interrupt request latch and interrupt priority status. rd timing has the same timing as psen, ds, lds, uds signals. 4. any input used to select an internal psd5xx function. 5. in multiplexed mode latched address generated from adio delay to address output on any port. * the -90 speed is available only on industrial temperaturerange product. 13.8 microcontroller interface ac/dc parameters (5 v 10% versions)
psd5xx family 116 -70 -90* -15 eprom_cmiser symbol parameter conditions min max min max min max on unit t lvlx ale or as pulse width 18 20 28 ns t avlx address setup time (note 1) 5 6 10 ns t lxax address hold time (note 1) 7 8 11 ns t avwl address valid to leading edge of wr (notes 1 and 3) 18 20 30 ns t slwl cs valid to leading edge of wr (note 3) 22 25 35 ns t dvwh wr data setup time (note 3) 12 15 22 ns t whdx wr data hold time (note 3) 5 5 5 ns t wlwh wr pulse width (note 3) 18 20 28 ns t whax trailing edge of wr to address invalid (note 3) 0 0 0 ns t whpv trailing edge of wr to port output valid (note 3) 25 30 38 ns in 16-bit data bus 20 30 38 ns address input valid to mode (note 2) t avpv address output delay in 8-bit data bus 22 32 48 ns mode (note 2) write timing (5 v 10%) microcontroller interface ac/dc parameters (5 v 10% versions) notes: 1. any input used to select an internal psd5xx function. 2. in multiplexed mode latched address generated from adio delay to address output on any port. 3. wr timing has the same timing as e, ds, lds, uds, wrl, wrh signals. * the -90 speed is available only on industrial temperature range product.
psd5xx family 117 -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit t avqv (pa) address valid to data valid (note 3) 45 55 62 add 10 ns t slqv (pa) cs valid to data valid 55 55 62 add 10 ns rd to data valid (notes 1 and 4) 22 26 45 0 ns t rlqv (pa) rd to data valid 8031 mode 32 38 45 0 ns t dvqv (pa) data in to data out valid 22 22 26 0 ns t qxrh (pa) rd data hold time (note 1) 0 0 0 0 ns t rlrh (pa) rd pulse width (note 1) 25 30 38 0 ns t rhqz (pa) rd to data high-z (note 1) 20 25 33 0 ns port a peripheral data mode read timing (5 v 10%) -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit t wlqv (pa) wr to data propagation delay (note 2) 25 27 35 0 ns t dvqv (pa) data to port a data propagation delay (note 5) 22 22 26 0 ns t whqz (pa) wr invalid to port a tri-state (note 2) 20 25 33 ns port a peripheral data mode write timing (5 v 10%) microcontroller interface ac/dc parameters (5 v 10% versions) notes: 1. rd timing has the same timing as psen, ds, lds, uds signals. 2. wr timing has the same timing as e, ds, lds, uds, wrl, wrh signals. 3. any input used to select port a data peripheral mode. 4. data is already stable on port a. 5. data stable on adio pins to data on port a. * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product.
psd5xx family 118 microcontroller interface ac/dc parameters (5 v 10% versions) -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit t lvdv ale access time from power down 100 120 150 add 10 ns t lvdv1 ale or csi access time from sleep 120 150 200 0 ns t lvdv2 zpld propagation delay in sleep mode 600 600 600 0 ns t lvdv3 zpld recovery time after sleep mode 250 250 250 0 ns t chcl apd clock high time using pe7 10 12 15 0 ns t clch apd clock low time using pe7 10 12 15 0 ns f max apd maximum frequency using pe7 35.00 30.00 22.00 0 mhz t 1 reset active low time 150 200 300 0 ns t 2 reset high to operational device 150 200 300 0 ns power down and reset timing (5 v 10%) * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product.
psd5xx family 119 -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit f max maximum frequency 36.00 30.00 22.00 0 mhz t chcl clock high time 10 12 15 0 ns t clch clock low time 10 12 15 0 ns t chpv clock to output delay 28 30 33 0 ns t chpv1 clock to watchdog output dealy 50 50 58 add 10 ns t lvch input setup time relative to rising pin input 15 17 20 add 10 clock edge (note 2) ns t lvch1 input setup time pld relative to rising combinatorial 25 27 31 (note 2) ns clock edge input t min minimum clock period 1/f max 28 33 45 0 ns counter/timer timing (5 v 10%) ac/dc parameters zpld t iming parameters (5 v 10% versions) -70 -90** -15 zpld_turbo symbol parameter conditions min max min max min max off * unit t iviv interrupt request input to interrupt output (note 3) 40 50 65 0 ns t rxix read vector to interrupt request clear 30 40 55 0 ns t ilil interrupt request minimum pulse width 18 20 35 0 ns t rlqv rd to data valid interrupt controller (note 1) 32 38 45 0 ns interrupt timing (5 v 10%) notes: 1. read to data valid of the interrupt request latch and interrupt priority status. rd timing has the same timing as psen, ds, lds, uds signals. 2. for inputs which use ppld only. 3. this timing is only valid when read to the interrupt request latch and priority status latch are not valid. * * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 10 ns to the timing parameters. ** the -90 speed is available only on industrial temperature range product.
psd5xx family 120 symbol parameter conditions min typ max unit v cc supply voltage all speeds 2.7 3 5.5 v v ih high level input voltage 2.7 v < v cc < 5.5 v .7 v cc v cc +.5 v v il low level input voltage 2.7 v < v cc < 5.5 v 0.5 .3 v cc v v ih1 reset high level input voltage (note 1) .8 v cc v cc +.5 v v il1 reset low level input voltage (note 1) .5 .2 v cc .1 v v hys reset pin hysteresis 0.3 v v ol output low voltage i ol =20 m a, v cc = 2.7 v 0.01 0.1 v i ol = 4 ma, v cc = 2.7 v 0.15 0.45 v v oh output high voltage i oh =20 m a, v cc = 2.7 v 2.9 2.99 v i oh = 1 ma, v cc = 2.7 v 2.4 2.6 v v sby sram standby voltage 2.7 v cc v i sby sram standby current v cc = 0 v 0.5 1 m a i idle idle current (v stby pin) v cc >v sby 0.1 0.1 m a v df sram data retention voltage only on v stby 2v i sb standby supply power down mode csi >v cc .3 v (note 2) 5 15 m a current sleep mode csi >v cc .3 v (note 3) 1 5 m a i li input leakage current v ss psd5xx family 121 -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit i/o input or feedback to t pd combinatorial output port b, e 55 80 add 20 ns t rpd registered input to (note 1) 55 85 add 20 ns combinatorial output t ea input to output enable any input 50 80 add 20 ns t er input to output disable any input 50 80 add 20 ns t arp register clear or preset delay any input 55 80 add 20 ns t arpw register clear or preset any input 30 60 ns pulse width t ard array delay 33 35 ns 13.10 ac/dc parameters zpld t iming parameters (zpsd5xxv versions) combinatorial delays (3.0 v 10%) note: 1. port a and latched address from adio (a0, a1, a8 a15). * note: if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters. -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit maximum frequency external feedback 1/(t s +t co ) 28.57 11.11 mhz maximum frequency f max internal feedback (f cnt ) 1/(t s +t co 10) 17.24 12.50 mhz maximum frequency pipelined data 1/(t ch +t cl ) 31.25 18.52 mhz t s input setup time any input 45 60 add 20 ns t h input hold time any input 0 0 0 ns t ch clock high time clock input 16 27 0 ns t cl clock low time clock input 16 27 0 ns t co clock to output delay clock input 30 33 0 ns t ard array delay for product term expansion any macrocell 24 35 0 ns t min minimum clock period t ch +t cl 30 30 0 ns synchronous clock mode (3.0 v 10%) * note: if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters.
psd5xx family 122 -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit maximum frequency external feedback 1/(t sa +t coa ) 14.49 11.11 mhz maximum frequency 1/(t sa +t co a 10) 16.95 12.50 mhz f maxa internal feedback (f cnta ) (note 1) maximum frequency pipelined data 1/(t ch +t cl ) 31.25 18.52 mhz t sa input setup time any input 13 30 add 20 ns t ha input hold time any input 13 30 0 ns t cha clock high time any input 25 27 0 ns t cla clock low time any input 16 27 0 ns t coa clock to output delay any input to port b 56 60 add 20 ns t ard array delay for product term expansion any macrocell 33 35 0 ns t mina minimum clock period 1/f cnt 59 80 0 ns asynchronous clock mode (3.0 v 10%, note 1) ac/dc parameters zpld t iming parameters (zpsd5xxv versions) note: 1. only port b has asynchronous outputs. clock into macrocell flip flop is generated by a product term. * note: if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters.
psd5xx family 123 -20 -25 eprom_cmiser symbol parameter conditions min max min max on unit t lvlx ale or as pulse width 30 30 0 ns t avlx address setup time (note 4) 12 15 0 ns t lxax address hold time (note 4) 12 17 0 ns t avqv address valid to data valid (note 4) 200 250 add 20 ns t slqv cs valid to data valid 200 275 add 20 ns rd to data valid 8/16-bit bus (note 1) 50 80 0 ns rd to data valid 8-bit bus, t rlqv 8031 separate mode (note 2) 57 90 0 ns rd to data valid from interrupt controller (note 3) 50 90 0 ns t rhqx rd data hold time (note 1) 0 0 0 ns t rlrh rd pulse width (note 1) 40 70 0 ns t rhqz rd to data high-z (note 1) 45 45 0 ns t ehel e pulse width 40 70 0 ns t theh r/w setup time to enable 20 22 0 ns t eltl r/w hold time after enable 0 0 0 ns in 16-bit data bus t avpv address input valid to mode (note 5) 40 60 0 ns address output delay in 8-bit data bus mode (note 5) 50 60 0 ns read timing (3.0 v 10%) explanation of ac symbols for non zpld timing. example: t avlx time from address valid to ale invalid. a address l logic level low or ale t r/w c power down n reset t time d input data p port signal v valid e e q output data x no longer a valid logic level h logic level high r wr, uds, lds, ds, iord, psen z float i interrupt s chip select 13.11 microcontroller interface ac/dc parameters (zpsd5xxv versions) notes: 1. rd timing has the same timing as psen, ds, lds, uds signals (in 8031 combined mode). 2. rd and psen have the same timing for 8031 separate mode. 3. read to data valid of the interrupt request latch and interrupt priority status. rd timing has the same timing as psen, ds, lds, uds signals. 4. any input used to select an internal zpsd5xx function. 5. in multiplexed mode latched address generated from adio delay to address output on any port.
notes: 1. any input used to select an internal zpsd5xx function. 2. in multiplexed mode latched address generated from adio delay to address output on any port. 3. wr timing has the same timing as e, ds, lds, uds, wrl, wrh signals. psd5xx family 124 -20 -25 eprom_cmiser symbol parameter conditions min max min max on unit t lvlx ale or as pulse width 30 30 ns t avlx address setup time (note 1) 12 15 ns t lxax address hold time (note 1) 12 17 ns t avwl address valid to leading edge of wr (notes 1 and 3) 35 50 ns t slwl cs valid to leading edge of wr (note 3) 40 60 ns t dvwh wr data setup time (note 3) 25 35 ns t whdx wr data hold time (note 3) 5 10 ns t wlwh wr pulse width (note 3) 30 30 ns t whax trailing edge of wr to address invalid (note 3) 0 0 ns t whpv trailing edge of wr to port output valid (note 3) 50 60 ns in 16-bit data bus 40 60 ns address input valid to mode (note 2) t avpv address output delay in 8-bit data bus 50 60 ns mode (note 2) write timing (3.0 v 10%) microcontroller interface ac/dc parameters (zpsd5xxv versions)
psd5xx family 125 -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit t wlqv (pa) wr to data propagation delay (note 2) 60 60 0 ns t dvqv (pa) data to port a data propagation delay (note 5) 40 50 0 ns t whqz (pa) wr invalid to port a tri-state (note 2) 35 60 0 ns port a peripheral data mode write timing (3.0 v 10%) microcontroller interface ac/dc parameters (zpsd5xxv versions) -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit t avqv (pa) address valid to data valid (note 3) 95 120 add 20 ns t slqv (pa) cs valid to data valid 100 120 add 20 ns t rlqv (pa) rd to data valid (notes 1 and 4) 50 90 0 ns t dvqv (pa) data in to data out valid 35 50 0 ns t qxrh (pa) rd data hold time (note 1) 0 0 0 ns t rlrh (pa) rd pulse width (note 1) 40 70 0 ns t rhqz (pa) rd to data high-z (note 1) 35 60 0 ns port a peripheral data mode read timing (3.0 v 10%) notes: 1. any input used to select an internal zpsd5xx function. 2. wr timing has the same timing as e, ds, lds, uds, wrl, wrh signals. 3. any input used to select port a data peripheral mode. 4. data is already stable on port a. 5. data stable on adio pins to data on port a. * note: if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters.
psd5xx family 126 -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit t lvdv ale access time from power down 170 250 add 20 ns t lvdv1 ale or csi access time from sleep 200 250 0 ns t lvdv2 zpld propagation delay in sleep mode 600 900 0 ns t lvdv3 zpld recovery time after sleep mode 250 400 0 ns t chcl apd clock high time using pe7 16 27 0 ns t clch apd clock low time using pe7 16 27 0 ns f max apd maximum frequency using pe7 20.00 18.52 0 mhz t 1 reset active low time 300 400 0 ns t 2 reset high to operational device 300 400 0 ns power down and reset timing (3.0 v 10%) microcontroller interface ac/dc parameters (zpsd5xxv versions) * note: if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters.
psd5xx family 127 -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit t iviv interrupt request input to interrupt output (note 3) 70 120 0 ns t rxix read vector to interrupt request clear 60 100 0 ns t ilil interrupt request minimum pulse width 40 45 0 ns t rlqv rd to data valid interrupt controller (note 1) 50 90 0 ns -20 -25 zpld_turbo symbol parameter conditions min max min max off * unit f max maximum frequency 20.00 12.50 0 mhz t chcl clock high time 16 22 0 ns t clch clock low time 16 22 0 ns t chpv clock to output delay 50 55 0 ns t chpv1 clock to watchdog output delay 90 100 add 20 ns t lvch input setup time relative add 20 to rising level clock any input 45 60 (note 2) ns t min minimum clock period 1/f max 50 80 0 ns notes: 1. read to data valid of the interrupt request latch and interrupt priority status. rd timing has the same timing as psen, ds, lds, uds signals. 2. for inputs which use ppld only. 3. this timing is only valid when read to the interrupt request latch and priority status latch are not valid. * if zpld_turbo is off and the zpld is operating above 15 mhz, there is no need to add 20 ns to the timing parameters. counter/timer timing (3.0 v 10%) interrupt timing (3.0 v 10%) ac/dc parameters zpld t iming parameters (zpsd5xxv versions)
psd5xx family 128 figure 52. read timing t avlx t lxax t lvlx t avqv t slqv t rlqv t rhqx trhqz t eltl t ehel t rlrh t theh t avpv address valid address valid data valid data valid address out ale /as a /d (bhe) multiplexed bus address (bhe/siz0) non-multiplexed bus data non-multiplexed bus csi rd (psen, ds) (lds, uds) e r/w 14.0 timing diagrams
psd5xx family 129 figure 53. write timing t avlx t lxax t lvlx t avwl t slwl t whdx t whax t eltl t ehel t wlwh t dvwh t theh t avpv address valid address valid data valid data valid address out t whpv standard mcu i/o out ale /as a /d (bhe) multiplexed bus address (bhe, siz0) non-multiplexed bus data non-multiplexed bus csi wr (wrh, wrl) (lds, uds) (ds) e r/ w
psd5xx family 130 figure 54. peripheral i/o read timing t qxrh (pa) t rlqv (pa) t rlrh (pa) t dvqv (pa) t rhqz (pa) t slqv (pa) t avqv (pa) address data valid ale /as a /d bus rd data on port a csi figure 55. peripheral i/o write timing tdvqv (pa) twlql (pa) twhqz (pa) address data out a /d bus wr port a data out ale /as
psd5xx family 121 figure 56. combinatorial timing zpld tpd trpd input (from port a) any output any output input (fromportb,c,d,e) figure 57. synchronous clock mode timing zpld t ch t cl t co t h t s clkin input registered output
psd5xx family 132 figure 58. asynchronous clock mode timing (product-term clock, pb macrocell only) figure 59. input to output disable /enable figure 60. asynchronous reset /preset ter tea input input to output enable/disable tarp register output tarpw reset/preset input tcha tcla tcoa tha tsa clock input registered output
psd5xx family 133 figure 61. reset timing t1 t2 figure 62. key to switching waveforms waveforms inputs outputs steady input may change from hi to lo may change from lo to hi don't care outputs only steady output will be changing from hi to lo will be changing lo to hi changing, state unknown center line is tri-state
psd5xx family 134 symbol parameter 1 conditions typical 2 max unit c in capacitance (for input pins only) v in =0v 4 6 pf c out capacitance (for input/output pins) v out = 0 v 8 12 pf c vpp capacitance (for wr/v pp or r/w/v pp )v pp =0v 18 25 pf notes: 1. these parameters are only sampled and are not 100% tested. 2. typical values are for t a =25 c and nominal supply voltages. t a =25 c, f = 1 mhz 15.0 pin capacitance figure 63. ac t esting input/output waveform figure 64. ac t esting load circuit 17.0 erasure and programming 3.0v 0v test point 1.5v device under test 2.01 v 195 w c l =30pf (including scope and jig capacitance) to clear all locations of their programmed contents, expose the window packaged device to an ultra-violet light source. a dosage of 30 w second/cm 2 is required (40 w second/cm 2 for zpsd5xxv versions). this dosage can be obtained with exposure to a wavelength of 2537 ? and intensity of 12000 m w/cm 2 for 40 to 45 minutes (55 to 60 minutes for zpsd5xxv versions). the device should be about 1 inch from the source, and all filters should be removed from the uv light source prior to erasure. the psd5xx and similar devices will erase with light sources having wavelengths shorter than 4000 ?. although the erasure times will be much longer than with uv sources at 2537 ?, exposure to fluorescent light and sunlight eventually erases the device. for maximum system reliability, these sources should be avoided. if used in such an environment, the package windows should be covered by an opaque substance. upon delivery from wsi, or after each erasure, the psd5xx device has all bits in the pad and eprom in the a1o or high state. the configuration bits are in the a0o or low state. the code, configuration, and pad map data are loaded through the procedure of programming information for programming the device is available directly from wsi. please contact your local sales representative. 16.0 ac t esting
psd5xx family 135 68-pin 68-pin pin no. pldcc/cldcc pin no. pldcc/cldcc package package 1 gnd 35 gnd 2 adio_7 36 pe2 3 adio_6 37 pe1 4 adio_5 38 pe0 5 adio_4 39 csi 6 adio_3 40 reset 7 adio_2 41 rd 8 adio_1 42 clkin 9 adio_0 43 pb7 10 pc7 44 pb6 11 pc6 45 pb5 12 pc5 46 pb4 13 pc4 47 pb3 14 pc3 48 pb2 15 pc2 49 pb1 16 pc1 50 pb0 17 pc0 51 gnd 18 vcc 52 vcc 19 gnd 53 pd7 20 pa7 54 pd6 21 pa6 55 pd5 22 pa5 56 pd4 23 pa4 57 pd3 24 pa3 58 pd2 25 pa2 59 pd1 26 pa1 60 pd0 27 pa0 61 adio_15 28 vstby 62 adio_14 29 wr 63 adio_13 30 pe7 64 adio_12 31 pe6 65 adio_11 32 pe5 66 adio_10 33 pe4 67 adio_9 34 pe3 68 adio_8 18.0 psd5xx pin assignments
psd5xx family 136 80-pin 80-pin pin no. tqfp pin no. tqfp package package 1 pc7 41 pb7 2 pc6 42 pb6 3 pc5 43 pb5 4 pc4 44 pb4 5 pc3 45 pb3 6 pc2 46 pb2 7 pc1 47 pb1 8 pc0 48 pb0 9v cc 49 gnd 10 v cc 59 gnd 11 gnd 51 v cc 12 gnd 52 v cc 13 pa7 53 pd7 14 pa6 54 pd6 15 pa5 55 pd5 16 pa4 56 pd4 17 pa3 57 pd3 18 pa2 58 pd2 19 pa1 59 pd1 20 pa0 60 pd0 21 nc 61 nc 22 nc 62 adio_15 23 vstdby 63 adio_14 24 wr 64 adio_13 25 pe7 65 adio_12 26 pe6 66 adio_11 27 pe5 67 adio_10 28 pe4 68 adio_9 29 pe3 69 adio_8 30 gnd 70 gnd 31 gnd 71 gnd 32 pe2 72 adio_7 33 pe1 73 adio_6 34 pe0 74 adio_5 35 csi 75 adio_4 36 reset 76 adio_3 37 rd 77 adio_2 38 clkin 78 adio_1 39 nc 79 adio_0 40 nc 80 nc psd5xx pin assignments
psd5xx family 137 19.0 package information figure 65. drawing j5 68-pin plastic leaded chip carrier (pldcc) (package type j) 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 v cc gnd pb0 pb1 pb2 pb3 pb4 pb5 pb6 pc7 pc6 pc5 pc4 pc3 pc2 pc1 pc0 v cc gnd pa7 pa6 pa5 pa4 pa3 pa2 pa1 11 10 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 98765432 1 68 67 66 65 64 63 62 61 adio-0 adio-1 adio-2 adio-3 adio-4 adio-5 adio-6 adio-7 gnd adio-8 adio-9 adio-10 adio-11 adio-12 adio-13 adio-14 adio-15 pa0 vstdby wr pe7 pe6 pe5 pe4 pe3 gnd pe2 pe1 pe0 csi reset rd clkin pb7 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 pd0 pd1 pd2 pd3 pd4 pd5 pd6 pd7 v cc gnd pb0 pb1 pb2 pb3 pb4 pb5 pb6 pc7 pc6 pc5 pc4 pc3 pc2 pc1 pc0 v cc gnd pa7 pa6 pa5 pa4 pa3 pa2 pa1 11 10 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 98765432 1 68 67 66 65 64 63 62 61 adio-0 adio-1 adio-2 adio-3 adio-4 adio-5 adio-6 adio-7 gnd adio-8 adio-9 adio-10 adio-11 adio-12 adio-13 adio-14 adio-15 pa0 vstdby wr pe7 pe6 pe5 pe4 pe3 gnd pe2 pe1 pe0 csi reset rd clkin pb7 figure 66. drawing l5 68-pin ceramic leaded chip carrier (cldcc) with window (package type l)
psd5xx family 138 figure 67. drawing u2 80-pin plastic thin quad flatpack (tqfp) (package type u) 60 pd0 59 pd1 58 pd2 57 pd3 56 pd4 55 pd5 54 pd6 53 pd7 52 v cc 51 v cc 50 gnd 49 gnd 48 pb0 47 pb1 46 pb2 45 pb3 44 pb4 43 pb5 42 pb6 41 pb7 pc7 pc6 pc5 pc4 pc3 pc2 pc1 pc0 v cc v cc gnd gnd pa7 pa6 pa5 pa4 pa3 pa2 pa1 pa0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 54 63 62 61 n/c adio0 adio1 adio2 adio3 adio4 adio5 adio6 adio7 gnd gnd adio8 adio9 adio10 adio11 adio12 adio13 adio14 adio15 n/c 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 n/c n/c vstdby wr pe7 pe6 pe5 pe4 pe3 gnd gnd pe2 pe1 pe0 csi reset rd clkin n/c n/c (top view)
psd5xx family 139 family: plastic leaded chip carrier millimeters inches symbol min max notes min max notes a 4.19 4.57 0.165 0.180 a1 2.41 3.00 0.095 0.118 a2 3.71 3.91 0.146 0.154 b 0.33 0.53 0.013 0.021 b1 0.66 0.81 0.026 0.032 c 0.196 0.262 0.0077 0.0083 d 25.02 25.27 0.985 0.995 d1 24.13 24.23 0.950 0.954 d2 22.61 23.62 0.890 0.930 d3 20.32 reference 0.800 reference e 25.02 25.27 0.985 0.995 e1 24.13 24.23 0.950 0.954 e2 22.61 23.62 0.890 0.930 e3 20.32 reference 0.800 reference e1 1.27 reference 0.050 reference n68 68 030195r6 drawing j5 68-pin plastic leaded chip carrier (pldcc) (package t ype j) b1 a1 a2 e1 e a d d1 68 1 2 3 e3 e2 e1 b d3 d2 c
psd5xx family 140 family: ceramic leaded chip carrier cerquad millimeters inches symbol min max notes min max notes a 3.94 4.57 0.155 0.180 a1 2.29 2.92 0.090 0.115 a2 3.05 3.68 0.120 0.145 b 0.43 0.53 0.017 0.021 b1 0.66 0.81 0.026 0.032 c 0.15 0.25 0.006 0.010 d 25.02 25.27 0.985 0.995 d1 23.93 24.28 0.942 0.956 d2 22.35 23.88 0.880 0.940 d3 20.32 reference 0.800 reference e 25.02 25.27 0.985 0.995 e1 23.93 24.28 0.942 0.956 e2 22.35 23.88 0.880 0.940 e3 20.32 reference 0.800 reference e1 1.27 reference 0.050 reference n68 68 030195r6 drawing l5 68-pin pocketed ceramic leaded chip carrier (cldcc) cerquad (package t ype l) d3 b1 b a1 a e1 e 68 d2 a2 c 1 2 3 d1 d e3 e1 to reduce lead damage, lead tips reside in pockets on the bottom of the package. view a view a e2
psd5xx family 141 drawing u2 80-pin plastic thin quad flatpack (tqfp) (package t ype u) d d1 d3 e3 e1 e index mark standoff: 0.05 mm min. load coplanarity: 0.102 mm max. l c be1 a2 a a1 a 80 1 2 3 family: plastic thin quad flatpack (tqfp) millimeters inches symbol min max notes min max notes a 0 8 0 8 a 1.60 0.063 a1 0.54 0.74 0.021 0.029 a2 1.15 1.55 0.045 0.061 b 0.30 reference 0.012 reference c 0.09 0.20 0.004 0.008 d 15.75 16.25 0.620 0.640 d1 13.90 14.10 0.547 0.555 d3 12.35 reference 0.486 reference e 15.75 16.25 0.620 0.640 e1 13.90 14.10 0.547 0.555 e3 12.35 reference 0.486 reference e1 0.65 reference 0.026 reference l 0.35 0.75 0.014 0.030 n80 80 030195r1
psd5xx family 142 20.0 psd5xx ordering information part # mcu plds/decoders i/o memory other psd zpsd zpsdv data path inputs ports eprom sram four 16-bit timer/counters interface product terms (w/bb) watchdog (16-bit) input micro ? cells inter. contr. output micro ? cells periph. mode outputs security page apd reg. psd511b1 zpsd511b1 zpsd511b1v 8 plus2 61 140 24 24 x 40 256kb 16kbx x x x x x PSD501B1 zPSD501B1 zPSD501B1v 16/8 plus2 61 140 24 24 x 40 256kb 16kbx x x x x x zpsd512b0 8 psd512b1 zpsd512b1 zpsd512b1v 8 plus2 61 140 24 24 x 40 512kb 16kbx x x x x x psd502b1 zpsd502b1 zpsd502b1v 16/8 plus2 61 140 24 24 x 40 512kb 16kbx x x x x x psd513b1 zpsd513b1 zpsd513b1v 8 plus2 61 140 24 24 x 40 1024kb 16kbx x x x x x psd503b1 zpsd503b1 zpsd503b1v 16/8 plus2 61 140 24 24 x 40 1024kb 16kbx x x x x x 20.1 psd5xx family selector guide
psd5xx family 143 psd5xx ordering information temperature (blank = commercial, i = industrial, m = military) package type speed (-70 = 70ns, -90 = 90ns, -15 = 150ns -20 = 200ns, -25 = 250ns) revision (blank = no revision) supply voltage (blank = 5v, v = 3 volt) base part number - see selector guide psd (wsi programmable system device) fam. power down feature (blank = standard, z = zero power feature) z psd -a -20 j i 413a2 v operating speed temperature part number (ns) package type range PSD501B1-c-70j 70 68 pin pldcc comm'l PSD501B1-c-70l 70 68 pin cldcc comm'l PSD501B1-c-70u 70 68 pin tqfp comm'l PSD501B1-c-90ji 90 68 pin pldcc industrial PSD501B1-c-90ui 90 68 pin tqfp industrial PSD501B1-c-15j 150 68 pin pldcc comm'l PSD501B1-c-15l 150 68 pin cldcc comm'l PSD501B1-c-15u 150 68 pin tqfp comm'l psd502b1-c-70j 70 68 pin pldcc comm'l psd502b1-c-70l 70 68 pin cldcc comm'l psd502b1-c-70u 70 68 pin tqfp comm'l psd502b1-c-90ji 90 68 pin pldcc industrial psd502b1-c-90ui 90 68 pin tqfp industrial psd502b1-c-15j 150 68 pin pldcc comm'l psd502b1-c-15l 150 68 pin cldcc comm'l psd502b1-c-15u 150 68 pin tqfp comm'l 20.3 ordering information 20.2 part number construction
psd5xx family 144 operating speed temperature part number (ns) package type range psd503b1-c-70j 70 68 pin pldcc comm'l psd503b1-c-70l 70 68 pin cldcc comm'l psd503b1-c-70u 70 68 pin tqfp comm'l psd503b1-c-90ji 90 68 pin pldcc industrial psd503b1-c-90ui 90 68 pin tqfp industrial psd503b1-c-15j 150 68 pin pldcc comm'l psd503b1-c-15l 150 68 pin cldcc comm'l psd503b1-c-15u 150 68 pin tqfp comm'l psd511b1-c-70j 70 68 pin pldcc comm'l psd511b1-c-70l 70 68 pin cldcc comm'l psd511b1-c-70u 70 68 pin tqfp comm'l psd511b1-c-90ji 90 68 pin pldcc industrial psd511b1-c-90ui 90 68 pin tqfp industrial psd511b1-c-15j 150 68 pin pldcc comm'l psd511b1-c-15l 150 68 pin cldcc comm'l psd511b1-c-15u 150 68 pin tqfp comm'l psd512b1-c-70j 70 68 pin pldcc comm'l psd512b1-c-70l 70 68 pin cldcc comm'l psd512b1-c-70u 70 68 pin tqfp comm'l psd512b1-c-90ji 90 68 pin pldcc industrial psd512b1-c-90ui 90 68 pin tqfp industrial psd512b1-c-15j 150 68 pin pldcc comm'l psd512b1-c-15l 150 68 pin cldcc comm'l psd512b1-c-15u 150 68 pin tqfp comm'l psd513b1-c-70j 70 68 pin pldcc comm'l psd513b1-c-70l 70 68 pin cldcc comm'l psd513b1-c-70u 70 68 pin tqfp comm'l psd513b1-c-90ji 90 68 pin pldcc industrial psd513b1-c-90ui 90 68 pin tqfp industrial psd513b1-c-15j 150 68 pin pldcc comm'l psd513b1-c-15l 150 68 pin cldcc comm'l psd513b1-c-15u 150 68 pin tqfp comm'l ordering information psd5xx ordering information (cont.)
operating speed temperature part number (ns) package type range zPSD501B1-c-70j 70 68 pin pldcc comm'l zPSD501B1-c-70l 70 68 pin cldcc comm'l zPSD501B1-c-70u 70 80 pin tqfp comm'l zPSD501B1-c-90ji 90 68 pin pldcc industrial zPSD501B1-c-90ui 90 80 pin tqfp industrial zPSD501B1-c-15j 150 68 pin pldcc comm'l zPSD501B1-c-15l 150 68 pin cldcc comm'l zPSD501B1-c-15u 150 80 pin tqfp comm'l zPSD501B1v-c-20j 200 68 pin pldcc comm'l zPSD501B1v-c-20ji 200 68 pin pldcc industrial zPSD501B1v-c-20l 200 68 pin cldcc comm'l zPSD501B1v-c-20u 200 80 pin tqfp comm'l zPSD501B1v-c-20ui 200 80 pin tqfp industrial zPSD501B1v-c-25j 250 68 pin pldcc comm'l zPSD501B1v-c-25l 250 68 pin cldcc comm'l zPSD501B1v-c-25u 250 80 pin tqfp comm'l zpsd502b1-c-70j 70 68 pin pldcc comm'l zpsd502b1-c-70l 70 68 pin cldcc comm'l zpsd502b1-c-70u 70 80 pin tqfp comm'l zpsd502b1-c-90ji 90 68 pin pldcc industrial zpsd502b1-c-90ui 90 80 pin tqfp industrial zpsd502b1-c-15j 150 68 pin pldcc comm'l zpsd502b1-c-15l 150 68 pin cldcc comm'l zpsd502b1-c-15u 150 80 pin tqfp comm'l zpsd502b1v-c-20j 200 68 pin pldcc comm'l zpsd502b1v-c-20ji 200 68 pin pldcc industrial zpsd502b1v-c-20l 200 68 pin cldcc comm'l zpsd502b1v-c-20u 200 80 pin tqfp comm'l zpsd502b1v-c-20ui 200 80 pin tqfp industrial zpsd502b1v-c-25j 250 68 pin pldcc comm'l zpsd502b1v-c-25l 250 68 pin cldcc comm'l zpsd502b1v-c-25u 250 80 pin tqfp comm'l zpsd503b1-c-70j 70 68 pin pldcc comm'l zpsd503b1-c-70l 70 68 pin cldcc comm'l zpsd503b1-c-70u 70 80 pin tqfp comm'l zpsd503b1-c-90ji 90 68 pin pldcc industrial zpsd503b1-c-90li 90 68 pin cldcc industrial zpsd503b1-c-90ui 90 80 pin tqfp industrial zpsd503b1-c-15j 150 68 pin pldcc comm'l zpsd503b1-c-15l 150 68 pin cldcc comm'l zpsd503b1-c-15u 150 80 pin tqfp comm'l psd5xx family 145 ordering information psd5xx product ordering information (cont.)
psd5xx family 146 operating speed temperature part number (ns) package type range zpsd503b1v-c-20j 200 68 pin pldcc comm'l zpsd503b1v-c-20ji 200 68 pin pldcc industrial zpsd503b1v-c-20l 200 68 pin cldcc comm'l zpsd503b1v-c-20u 200 80 pin tqfp comm'l zpsd503b1v-c-20ui 200 80 pin tqfp industrial zpsd503b1v-c-25j 250 68 pin pldcc comm'l zpsd503b1v-c-25l 250 68 pin cldcc comm'l zpsd503b1v-c-25u 250 80 pin tqfp comm'l zpsd511b1-c-70j 70 68 pin pldcc comm'l zpsd511b1-c-70l 70 68 pin cldcc comm'l zpsd511b1-c-70u 70 80 pin tqfp comm'l zpsd511b1-c-90ji 90 68 pin pldcc industrial zpsd511b1-c-90ui 90 80 pin tqfp industrial zpsd511b1-c-15j 150 68 pin pldcc comm'l zpsd511b1-c-15l 150 68 pin cldcc comm'l zpsd511b1-c-15u 150 80 pin tqfp comm'l zpsd511b1v-c-20j 200 68 pin pldcc comm'l zpsd511b1v-c-20ji 200 68 pin pldcc industrial zpsd511b1v-c-20l 200 68 pin cldcc comm'l zpsd511b1v-c-20u 200 80 pin tqfp comm'l zpsd511b1v-c-20ui 200 80 pin tqfp industrial zpsd511b1v-c-25j 250 68 pin pldcc comm'l zpsd511b1v-c-25l 250 68 pin cldcc comm'l zpsd511b1v-c-25u 250 80 pin tqfp comm'l zpsd512b0-c-70j 70 68 pin pldcc comm'l zpsd512b0-c-70l 70 68 pin cldcc comm'l zpsd512b0-c-70u 70 80 pin tqfp comm'l zpsd512b0-c-90ji 90 68 pin pldcc industrial zpsd512b0-c-90ui 90 80 pin tqfp industrial zpsd512b0-c-15j 150 68 pin pldcc comm'l zpsd512b0-c-15l 150 68 pin cldcc comm'l zpsd512b0-c-15u 150 80 pin tqfp comm'l zpsd512b1-c-70j 70 68 pin pldcc comm'l zpsd512b1-c-70l 70 68 pin cldcc comm'l zpsd512b1-c-70u 70 80 pin tqfp comm'l zpsd512b1-c-90ji 90 68 pin pldcc industrial zpsd512b1-c-90ui 90 80 pin tqfp industrial zpsd512b1-c-15j 150 68 pin pldcc comm'l zpsd512b1-c-15l 150 68 pin cldcc comm'l zpsd512b1-c-15u 150 80 pin tqfp comm'l ordering information psd5xx product ordering information (cont.)
psd5xx family 147 operating speed temperature part number (ns) package type range zpsd512b1v-c-20j 200 68 pin pldcc comm'l zpsd512b1v-c-20ji 200 68 pin pldcc industrial zpsd512b1v-c-20l 200 68 pin cldcc comm'l zpsd512b1v-c-20u 200 80 pin tqfp comm'l zpsd512b1v-c-20ui 200 80 pin tqfp industrial zpsd512b1v-c-25j 250 68 pin pldcc comm'l zpsd512b1v-c-25l 250 68 pin cldcc comm'l zpsd512b1v-c-25u 250 80 pin tqfp comm'l zpsd513b1-c-70j 70 68 pin pldcc comm'l zpsd513b1-c-70l 70 68 pin cldcc comm'l zpsd513b1-c-70u 70 80 pin tqfp comm'l zpsd513b1-c-90ji 90 68 pin pldcc industrial zpsd513b1-c-90ui 90 80 pin tqfp industrial zpsd513b1-c-15j 150 68 pin pldcc comm'l zpsd513b1-c-15l 150 68 pin cldcc comm'l zpsd513b1-c-15u 150 80 pin tqfp comm'l zpsd513b1v-c-20j 200 68 pin pldcc comm'l zpsd513b1v-c-20ji 200 68 pin pldcc industrial zpsd513b1v-c-20l 200 68 pin cldcc comm'l zpsd513b1v-c-20u 200 80 pin tqfp comm'l zpsd513b1v-c-20ui 200 80 pin tqfp industrial zpsd513b1v-c-25j 250 68 pin pldcc comm'l zpsd513b1v-c-25l 250 68 pin cldcc comm'l zpsd513b1v-c-25u 250 80 pin tqfp comm'l ordering information psd5xx product ordering information (cont.)
psd5xx family 148 21.0 process change notice, october 1, 1998 psd5xx functional change: a change has been implemented in the most recent silicon that improves the way that the image register is updated. this change only applies to event count mode for counter units ctu0, ctu1, and ctu3. previous psd5xx silicon: the image register was not updated with the actual event count upon exiting freeze mode. as a result, in certain circumstances, the image register may not have reflected the actual event count. although an incorrect count may have been read from the image register at a given time, no event counts were ever lost because the microcontroller would eventually read the correct value in the image register on subsequent freeze and read cycles. current psd5xx silicon: the image register is now automatically updated with the actual count upon exiting the freeze mode. this ensures that on the very next freeze and read cycle, the microcontroller will read the actual count from the image register. there are two restrictions however: 1. if an event occurs within one timer clock period plus two clkin periods after the image register is unfrozen, then the image register will not reflect that event on the very next freeze and read cycle (timer clock period is defined on page 6-79 of the 1996 psd data book). instead, the event will appear in the image register on the subsequent freeze and read cycle. 2. the time between an unfreeze and the beginning of the next freeze has the same time constraint as number one. there must be at least one timer clock period plus two clkin periods between the end of one freeze cycle and the beginning of the next. this timing can be controlled by software design. to reduce the chance of getting a delayed count in the image register due to restriction number 1, execute a software load/store command just prior to freezing and reading the image register to force an update to the image count. backwards compatibility: this improvement should have no impact on current designs unless these designs were compensating for lost events. in such cases, compatibility is dependent on the compensation method that was used. please contact wsi at apphelp@wsiusa.com if you think you have an issue or have any questions.
psd5xx, zpsd5xx 2/3 revision history table 1. document revision history date rev. description of revision apr-1994 1.0 psd5xx: document written in the wsi format. initia l release jun-1995 1.1 zpsd5xx: updated specificatio ns mar-1997 1.2 zpsd5xx updated specificatio ns may-1998 1.3 psd5xx, zpsd5xx updated specifi cations, various speed grades removed feb-1999 1.4 psd5xx, zpsd5xx combined data sheets, elimin ated militar y parts, eliminated various speed grades, updated specifica tions. 31-jan-2002 1.5 psd5xx, zpsd5xx: low cost field programmable microcontroller peripherals front page, and back two pages, in st format, added to the pdf file any references to waferscale, wsi, easyflash and psdsoft 2000 updated to st, st, flash+psd and psdsoft express
3/3 psd5xx, zpsd5xx information furnished is believed to be accurate and reliable. however, stmicroelectronics assumes no responsibility for the co nsequences of use of such information nor for any infringement of patents or other rights ofthird parties which may result from its use. no license is granted by implication or otherwise under any patent or patent rights of stmicroelectronics. specifications mentioned in this publicati on are subject to change without notice. this publication supersedes and replaces all information previously supplied. stmicroelectronics prod ucts are not authorized for use as critical components in life support devices or systems without express written approval of stmicroelectro nics. the st logo is registered trademark of stmicroelectronics all other names are the property of their respective owners ? 2002 stmicroelectronics - all rights reserved stmicroelectronics group of companies australia - brazil - canada - china - finland - france - germany - hong kong - india - israel - italy - japan - malaysia - malta - morocco - singapore - spain - sweden - switzerland - united kingdom - unit ed states. www.st.com


▲Up To Search▲   

 
Price & Availability of PSD501B1

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X